国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Android > 正文

Android開發(fā)常見錯(cuò)誤小結(jié)

2020-04-11 11:32:44
字體:
供稿:網(wǎng)友

本文實(shí)例總結(jié)了Android開發(fā)的常見錯(cuò)誤。分享給大家供大家參考。具體如下:

錯(cuò)誤1:

在intent中添加了一個(gè)內(nèi)容,在調(diào)用getStringExtra讀取的時(shí)候,總是報(bào)錯(cuò)。代碼如下:

// back按鈕 Button btnBack = (Button) findViewById(R.id.btnActivity2Back);btnBack.setOnClickListener(new OnClickListener() {   @Override   public void onClick(View v) {  Intent intent = new Intent();  intent.putExtra("from", 2);  setResult(RESULT_OK, intent);  finish();   } });

其中調(diào)用了intent的putExtra方法。

讀取代碼如下:

@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) {     TextView tview = (TextView) findViewById(R.id.textViewResult1);    if (data != null) {       tview.setText("從" + data.getStringExtra("from") + "返回!");    }     super.onActivityResult(requestCode, resultCode, data); }

調(diào)用了getStringExtra來讀取數(shù)據(jù)。這里會(huì)報(bào)錯(cuò)。

錯(cuò)誤原因:

在putExtra的時(shí)候,代碼intent.putExtra("from", 2);中,2并不是一個(gè)字符串,而是一個(gè)數(shù)字。因此,在讀取的時(shí)候,調(diào)用getStringExtra報(bào)錯(cuò)了。

如果這么寫:intent.putExtra("from", 2 + "");就不會(huì)有問題。

錯(cuò)誤2:

在做listview使用simplecursoradapter的時(shí)候,遇到下面的這個(gè)問題。

java.lang.UnsupportedOperationException: addView(View, LayoutParams) is not supported in AdapterView

這個(gè)錯(cuò)誤原因是我在main.xml布局文件中,將TextView控件包含在了<ListView>控件內(nèi)部而出現(xiàn)的錯(cuò)誤,在設(shè)計(jì)中用來顯示數(shù)據(jù)的控件,最好放在另外一個(gè)布局文件中。

比如說,我的listview的xml為:

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  android:layout_width="fill_parent"   android:layout_height="fill_parent"   android:orientation="vertical" >   <Button     android:id="@+id/btnInitData5000"     android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:text="初始化數(shù)據(jù)5000條" />   <Button     android:id="@+id/btnInitListView"     android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:text="讀取數(shù)據(jù)初始化ListView" />   <ListView     android:id="@+id/listView4"     android:layout_width="fill_parent"     android:layout_height="wrap_content" >   </ListView> </LinearLayout>

listview的xml中只寫listview的xml,而把每行要顯示的內(nèi)容,放在了myrow.xml中,如下:

<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  android:layout_width="match_parent"   android:layout_height="wrap_content" >   <TextView     android:id="@+id/textViewItemName"     android:layout_width="fill_parent"     android:layout_height="wrap_content" /> </LinearLayout> 

錯(cuò)誤3:

從listview的一個(gè)item點(diǎn)擊,跳轉(zhuǎn)到另外一個(gè)activity的時(shí)候,動(dòng)畫效果是不對的。

startActivity(intent); // finish();   Log.e("mason", "gongneng ani called");   overridePendingTransition(R.anim.slide_out_right,    R.anim.slide_in_left);

如上面的代碼。但是如果先調(diào)用finish()函數(shù),動(dòng)畫效果就對了。但是此時(shí)有個(gè)問題。進(jìn)入了新的activity之后,按back鍵,不能回到原來的activity了。這是因?yàn)樵瓉淼腶ctivity調(diào)用了finish函數(shù),finish函數(shù)相當(dāng)于用戶按下了back鍵。相當(dāng)于告訴了安卓系統(tǒng),這個(gè)activity可以被回收了(此時(shí)在安卓activity棧中這個(gè)activity也不存在了)。

希望本文所述對大家的Android程序設(shè)計(jì)有所幫助。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 凤阳县| 龙海市| 司法| 卢龙县| 舒兰市| 岱山县| 五峰| 即墨市| 镶黄旗| 泽库县| 思南县| 宁晋县| 扬中市| 永顺县| 揭阳市| 揭西县| 安泽县| 屏东市| 阿克苏市| 兴隆县| 邻水| 资兴市| 鄂尔多斯市| 佛教| 长岛县| 德昌县| 苏尼特左旗| 嘉峪关市| 武穴市| 安龙县| 江华| 县级市| 阿克陶县| 香港| 海阳市| 武邑县| 桃江县| 当雄县| 桃源县| 淳化县| 迭部县|