Android開(kāi)發(fā)常見(jiàn)錯(cuò)誤小結(jié)
本文實(shí)例總結(jié)了Android開(kāi)發(fā)的常見(jiàn)錯(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來(lái)讀取數(shù)據(jù)。這里會(huì)報(bào)錯(cuò)。
錯(cuò)誤原因:
在putExtra的時(shí)候,代碼intent.putExtra("from", 2);中,2并不是一個(gè)字符串,而是一個(gè)數(shù)字。因此,在讀取的時(shí)候,調(diào)用getStringExtra報(bào)錯(cuò)了。
如果這么寫(xiě):intent.putExtra("from", 2 + "");就不會(huì)有問(wèn)題。
錯(cuò)誤2:
在做listview使用simplecursoradapter的時(shí)候,遇到下面的這個(gè)問(wèn)題。
java.lang.UnsupportedOperationException: addView(View, LayoutParams) is not supported in AdapterView
這個(gè)錯(cuò)誤原因是我在main.xml布局文件中,將TextView控件包含在了<ListView>控件內(nèi)部而出現(xiàn)的錯(cuò)誤,在設(shè)計(jì)中用來(lái)顯示數(shù)據(jù)的控件,最好放在另外一個(gè)布局文件中。
比如說(shuō),我的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中只寫(xiě)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)畫(huà)效果是不對(duì)的。
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)畫(huà)效果就對(duì)了。但是此時(shí)有個(gè)問(wèn)題。進(jìn)入了新的activity之后,按back鍵,不能回到原來(lái)的activity了。這是因?yàn)樵瓉?lái)的activity調(diào)用了finish函數(shù),finish函數(shù)相當(dāng)于用戶按下了back鍵。相當(dāng)于告訴了安卓系統(tǒng),這個(gè)activity可以被回收了(此時(shí)在安卓activity棧中這個(gè)activity也不存在了)。
希望本文所述對(duì)大家的Android程序設(shè)計(jì)有所幫助。
相關(guān)文章
Android中的應(yīng)用認(rèn)領(lǐng)總結(jié)
這篇文章主要介紹了Android中的應(yīng)用認(rèn)領(lǐng)總結(jié),本文講解了如何認(rèn)領(lǐng)、對(duì)未簽名包簽名、需要替換的簽名值、驗(yàn)證簽名等內(nèi)容,需要的朋友可以參考下2015-01-01
Android 調(diào)用系統(tǒng)應(yīng)用的方法總結(jié)
這篇文章主要介紹了Android 調(diào)用系統(tǒng)應(yīng)用的方法總結(jié)的相關(guān)資料,這里提供調(diào)用錄像,錄音,拍照等功能,需要的朋友可以參考下2017-08-08
Android中關(guān)于自定義相機(jī)預(yù)覽界面拉伸問(wèn)題
這篇文章主要為大家詳細(xì)介紹了Android中關(guān)于自定義相機(jī)預(yù)覽界面拉伸問(wèn)題,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-02-02
Android ListView的item中嵌套ScrollView的解決辦法
有時(shí)候,listview 的item要顯示的字段比較多,考慮到顯示問(wèn)題,item外面不得不嵌套ScrollView來(lái)實(shí)現(xiàn),糾結(jié)怎么解決此問(wèn)題呢?下面小編給大家分享下Android ListView的item中嵌套ScrollView的解決辦法,感興趣的朋友一起看看吧2016-10-10
Android 使用Vitamio打造自己的萬(wàn)能播放器(8)——細(xì)節(jié)優(yōu)化
本文主要介紹Android Vitamio開(kāi)發(fā)播放器,這里給大家提供了一些小的細(xì)節(jié)優(yōu)化,更加完善播放器的功能,希望能幫助有需要的小伙伴2016-07-07
Android編程實(shí)現(xiàn)分頁(yè)加載ListView功能示例
這篇文章主要介紹了Android編程實(shí)現(xiàn)分頁(yè)加載ListView功能,結(jié)合實(shí)例形式分析了listview分頁(yè)加載的原理、實(shí)現(xiàn)技巧與相關(guān)注意事項(xiàng),需要的朋友可以參考下2017-02-02
Android入門(mén)之使用SharedPreference存取信息詳解
這篇文章主要為大家詳細(xì)介紹了Android如何使用SharedPreference實(shí)現(xiàn)存取信息,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Android有一定的幫助,需要的可以參考一下2022-12-12
Android studio導(dǎo)出APP測(cè)試包和構(gòu)建正式簽名包
大家好,本篇文章主要講的是Android studio導(dǎo)出APP測(cè)試包和構(gòu)建正式簽名包,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下2021-12-12
Android Rreact Native 常見(jiàn)錯(cuò)誤總結(jié)
這篇文章主要介紹了Android Rreact Native 常見(jiàn)錯(cuò)誤總結(jié)的相關(guān)資料,需要的朋友可以參考下2017-06-06

