我想將ImageView的Tag設置爲1,2,3 .......並且想要檢索該標籤onClick並將其傳遞給Intent,並在nextActivity中使用Intents檢索它並傳遞給函數但未能做到所以....無法獲得ImageView的「Integer Tag」並傳入Android中的Intent?
XML:
<ImageView
android:id="@+id/latest_btn_quran_on"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="2dp"
android:src="@drawable/latest_quran_on"
android:tag="1"/>
ImageView的ClickListener:
quranHadeesButton = (ImageView)findViewById(R.id.latest_btn_quran_on);
quranHadeesButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent latestQuranQuesAns = new Intent(GenraltopicActivity.this,GeneralTopicQuestions.class);
//latestQuranQuesAns.putExtra("clickedTopicid",quranHadeesButton.getTag().toString());
int id = (Integer) quranHadeesButton.getTag();
latestQuranQuesAns.putExtra("clickedTopicid",id);
startActivity(latestQuranQuesAns);
}
});
GeneralTopicQuestions活動:
public class GeneralTopicQuestions extends Activity
{ImageView quranOHadeesQuestion1;
Context context;
List<String> questionImagesNameList = new ArrayList<String>();
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.general_topic_questions);
context = this;
//Intent intent = getIntent();
String clickedTopicId = Integer.toString(getIntent().getExtras().getInt("clickedTopicid"));//string data will contain image file name
Log.i("clickedTopicid",""+clickedTopicId);
JamiaBinoriaDBHelper dbhelper = new JamiaBinoriaDBHelper(context);
dbhelper.open();
//Integer sampleId = clickedTopicId
questionImagesNameList = dbhelper.GetClickedIdImages(getIntent().getExtras().getInt("clickedTopicid"));
Log.i("questionImagesNameList:",""+questionImagesNameList);
}
}
問題是與此LOC:
questionImagesNameList = dbhelper.GetClickedIdImages(getIntent().getExtras().getInt("clickedTopicid"));
EDIT logcat的:
02-06 00:03:15.780:E/AndroidRuntime(7564):致命異常:主 02- E/AndroidRuntime(7564):java.lang.ClassCastException:java.lang.String不能轉換爲java.lang.Integer 02-06 00:03:15.780:E/AndroidRuntime(7564) :at com.jamia.binoria.GenraltopicActivity $ 1.onClick(GenraltopicActivity.java:28) 02-06 00:03:15.780:E/AndroidRuntime(7564):at android.v iew.View.performClick(View.java:4211) 02-06 00:03:15.780:E/AndroidRuntime(7564):at android.view.View $ PerformClick.run(View.java:17267) 02-06 00:03:15.780:E/AndroidRuntime(7564):at android.os.Handler.handleCallback(Handler.java:615) 02-06 00:03:15.780:E/AndroidRuntime(7564):at android.os。 Handler.dispatchMessage(Handler.java:92) 02-06 00:03:15.780:E/AndroidRuntime(7564):at android.os.Looper.loop(Looper.java:137) 02-06 00:03: 15.780:E/AndroidRuntime(7564):at android.app.ActivityThread.main(ActivityThread.java:4898) 02-06 00:03:15.780:E/AndroidRuntime(7564):at java.lang.reflect.Method。 invokeNative(Native Method) 02-06 00:03:15.780:E/AndroidRuntime(7564):at java.lang.reflect.Method.invoke(Method.java:511) 02-06 00:03:15 .780:E/AndroidRuntime(7564):at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:1006) 02-06 00:03:15.780:E/AndroidRuntime(7564):at com .android.internal.os.ZygoteInit.main(ZygoteInit.java:773) 02-06 00:03:15.780:E/AndroidRuntime(7564):在dalvik.system.NativeStart.main(本機方法)
Whew是您的onClick listner?並粘貼你的日誌貓。 – 2014-02-05 07:29:28