Re: [問題] listview換頁的程式碼不太能理解
※ 引述《Mandy5571 (小舞˙ˇ˙)》之銘言:
: 我是android新手,還不太會寫>"<有諸多問題請多包涵...
: 買的書當中完全沒提到ListView..主要是在說Adapter
: 於是乎我就上網開始找ListView的相關程式碼,一切順利直到要做點擊切換的動作
: 網路上我找到的程式碼大多為從listview 1 切換到 listview2
程式碼 從TestListView.java跳至TestOtherActivity.java
package com.givemepass.TestListView;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class TestListView extends Activity {
private static final String[] array = {
"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"
};
private ArrayAdapter<String> adapter;
private ListView myListView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
myListView = (ListView)findViewById(R.id.myListView01);
adapter =
new ArrayAdapter<String>
(this,android.R.layout.simple_list_item_1,array);
myListView.setAdapter(adapter);
myListView.setOnItemClickListener(new OnItemClickListener(){
@Override
public void onItemClick(
AdapterView<?> arg0, View arg1, int arg2,long arg3) {
Intent i = new Intent();
i.setClass(TestListView.this, TestOtherActivity.class);
Bundle bundle = new Bundle();
switch(arg2){
case 0:
bundle.putString("day", "Sundy");
break;
case 1:
bundle.putString("day", "Monday");
break;
case 2:
bundle.putString("day", "Tuesday");
break;
case 3:
bundle.putString("day", "Wednesday");
break;
case 4:
bundle.putString("day", "Thursday");
break;
case 5:
bundle.putString("day", "Friday");
break;
case 6:
bundle.putString("day", "Saturday");
break;
}
i.putExtras(bundle);
startActivity(i);//重點在這一行
}
});
}
}
: 但我是要從ListView1切換到另一個不是listview的頁面
: 用一般換頁(manifest)的方式做也不對(還是說其實可以,是我弄錯?!)
這邊androidmanifest記得加上要跳頁的activity的名稱
: [問題1]
: 然後這是我找到的listview換頁的程式碼
: 主要是這段
: list.setTextFilterEnabled(true);
: list.setOnItemClickListener(new OnItemClickListener() {
: @Override
: public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,long arg3) {
: // TODO Auto-generated method stub
: }
: 不太懂那個變數設定的意思是甚麼,看別人的範例程式又好像有那麼點不一樣
: [問題2]
: 如果要做listview的切換的話,另一個頁面也是放在同個project中嗎?
: (在放main.xml的資料夾下建立abc.xml 在java的資料夾中建立abc.java?)
: 還是能夠兩個project互相連結呢?
: 謝謝大家了>"<
: 希望知道的高手們可以為我解惑QQ
這邊是跳頁後的java
package com.givemepass.TestListView;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class TestOtherActivity extends Activity {
private Button button01;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.abc);
button01 = (Button)findViewById(R.id.button01);
Intent intent = getIntent();
Bundle bundle = intent.getExtras();
String day = bundle.getString("day");
setTitle(day);
button01.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View arg0) {
Intent i = new Intent();
i.setClass(TestOtherActivity.this,TestListView.class);
startActivity(i);
}
});
}
}
http://uploadingit.com/file/krlbwwbs0mz07fiq/TestListView.zip
一次滿足所有問題 連abc.xml都忠於原著
簡單說明一下 首先你會有一個一開始的畫面
TestListView.java 裡面放了一個LinearLayout跟塞進一個ListView
之後就用內建的ListView格式 把一個星期的英文名稱都塞進去
只要你點擊ListView的某一天, 他就會跳到TestOtherActivity.java這支程式裡面
這支程式只會放一個button,按下去可以回到ListView
而你看一下標題會是你剛剛所選的星期幾。
重點是Intent這個東西
參考看看
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.221.115.4
推
08/12 16:55, , 1F
08/12 16:55, 1F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
AndroidDev 近期熱門文章
PTT數位生活區 即時熱門文章