編輯:關於Android編程
本文實例總結了Android開發的常見錯誤。分享給大家供大家參考。具體如下:
錯誤1:
在intent中添加了一個內容,在調用getStringExtra讀取的時候,總是報錯。代碼如下:
// 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();
}
});
其中調用了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);
}
調用了getStringExtra來讀取數據。這裡會報錯。
錯誤原因:
在putExtra的時候,代碼intent.putExtra("from", 2);中,2並不是一個字符串,而是一個數字。因此,在讀取的時候,調用getStringExtra報錯了。
如果這麼寫:intent.putExtra("from", 2 + "");就不會有問題。
錯誤2:
在做listview使用simplecursoradapter的時候,遇到下面的這個問題。
java.lang.UnsupportedOperationException: addView(View, LayoutParams) is not supported in AdapterView
這個錯誤原因是我在main.xml布局文件中,將TextView控件包含在了<ListView>控件內部而出現的錯誤,在設計中用來顯示數據的控件,最好放在另外一個布局文件中。
比如說,我的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="初始化數據5000條" />
<Button
android:id="@+id/btnInitListView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="讀取數據初始化ListView" />
<ListView
android:id="@+id/listView4"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
</ListView>
</LinearLayout>
listview的xml中只寫listview的xml,而把每行要顯示的內容,放在了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>
錯誤3:
從listview的一個item點擊,跳轉到另外一個activity的時候,動畫效果是不對的。
startActivity(intent);
// finish();
Log.e("mason", "gongneng ani called");
overridePendingTransition(R.anim.slide_out_right,
R.anim.slide_in_left);
如上面的代碼。但是如果先調用finish()函數,動畫效果就對了。但是此時有個問題。進入了新的activity之後,按back鍵,不能回到原來的activity了。這是因為原來的activity調用了finish函數,finish函數相當於用戶按下了back鍵。相當於告訴了安卓系統,這個activity可以被回收了(此時在安卓activity棧中這個activity也不存在了)。
希望本文所述對大家的Android程序設計有所幫助。
Android塗鴉技術及刮刮樂示例分析
概述:很早之前就想研究一下Android中的塗鴉,其實也說不上是研究了,畢竟都是一些相對比較簡單的知識點。下面就對基於畫布(Canvas)和觸摸事件(onTouchEve
注解在android中的使用
注解在android程序中的使用 何為注解: 在Java當中,注解又叫做“元數據”,它為我們在源代碼中添加信息提供了一種形式化的方法,讓我們能在以後的某個時間方便的使用這
android:ScrollView監視什麼時候滑到底部
這是效果主要是onTouchListener監聽事件,監視什麼時候滑到底部同時要理解getMeasuredHeight和getHeight的區別getMeasuredHe
Android開發新工具Android Studio相關知識
1 安裝as的下載as官網下載地址為:http://developer.android.com/sdk/installing/studio.html國內鏡像網址&mdas
Android 高德地圖 Native method not found: com.autonavi.amap.mapcore.MapCore.nativeNewInstance:(Ljava/lan
Android 高德地圖 java.lang.Unsatisfiedli