我正在研究一個有肌肉鍛鍊的應用程序。Android應用程序架構?
我要當點擊帶我去活動2 不同的ImageView和TextView的活動中各1項。 這可能嗎?
pic http://i50.tinypic.com/zv6k41.jpg
我正在研究一個有肌肉鍛鍊的應用程序。Android應用程序架構?
我要當點擊帶我去活動2 不同的ImageView和TextView的活動中各1項。 這可能嗎?
pic http://i50.tinypic.com/zv6k41.jpg
-在你1日活動創建ListView
顯示您的項目。
-在ListView控件的onItemClickListener()
方法,使用Intent
去第二屆活動。
-使用putExtra()
意向到認沽值如果需要傳遞給第二個活動,並的方法讓他們使用getExtras()
方法第二活動。
活動1:
lv.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
i = new Intent(Activity1.this,Activity2.class);
i.putExtra("value1","hello");
i.putExtra("value2","hi");
startActivity(i);
});
活動2:
Intent i = getIntent();
String index = intent.getExtras().getString("value1");
String value = intent.getExtras().getString("value2");
謝謝,這是很難的,你建議爲這個應用程序變得更容易架構?? –
@Jouni這是最簡單這樣做的方式...我們也可以通過使用'Bundle'來做到這一點...但這種方式要容易得多 –
可以value1是一個圖像?? –
是的,這是可能的。您必須爲其他活動使用意圖(以及有關練習的一些數據)。
在項目的onClick創建此意圖,並通過startActivity(意向)啓動活動。在活動2中,您讀出傳入的Intent額外數據並相應地調整TextView/ImageView。
好,謝謝,但我在Android的初學者,我不知道如何讀的輸入數據:( –
作爲評論員說: 「這是可能的」。可以通過用於啓動活動的Intent。使用Intent.putExtra(key,value)變體。這些臨時演員將作爲Bundle對象傳遞給活動。在那裏你可能會拿你的額外。例如,你可能會附上;
Intent intent = new Intent(HostActivity.this, SuccessorClass.class);
intent.putExtra("Extra key", extraData);
startActivity(intent);
並且您可能會用附加數據獲取;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Object extraData = savedInstanceState.get("Extra key");
}
確保檢查put和get方法的變體,因爲它們支持大多數泛型類型。乾杯!
的確是這樣,可能 – Frank
更具體,你到底要什麼 – jcw
有人可以顯示如何? –