我的ListView活動類:如何顯示基於id的listview項目內容?
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
String[] naziviMolitvi = getResources().getStringArray(R.array.nazivi_molitvi);
setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item, naziviMolitvi));
ListView lv = getListView();
lv.setTextFilterEnabled(true);
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// When clicked, show a toast with the TextView text
Intent intent = new Intent(getApplicationContext(), Molitva.class);
//Bundle bundle = new Bundle();
//bundle.putInt("pozicija", position);
//intent.putExtras(bundle);
startActivity(intent);
// Toast.makeText(getApplicationContext(),
// ((TextView) view).getText(), Toast.LENGTH_SHORT).show();
}
});
}
我已經存儲在strings.xml檔案中的字符串數組列表項:
<string-array name="nazivi_molitvi">
<item>Дневне молитве</item>
<item>Символ вере</item>
<item>Псалм 50</item>
<item>Свакодневна молитва</item>
<item>Молитва Пресветој Богородици у невољи и потиштености</item>
<item>Поздрав Богородици</item>
<item>Јутарња молитва</item>
<item>Вечерња молитва</item>
<item>Молитва Анђелу Чувару</item>
<item>Молитва пред Свето Причешће</item>
<item>Молитва после Светог Причешћа</item>
<item>Молитва за међусобни мир</item>
<item>Молитва пре учења</item>
<item>Молитва после учења</item>
<item>Молитва пре доручка</item>
<item>Молитва после доручка</item>
<item>Молитва пре ручка</item>
<item>Молитва после ручка</item>
<item>Молитва пре вечере</item>
<item>Молитва после вечере</item>
<item>Десет Божијих Заповести</item>
<item>Две највеће Христове Заповести</item>
<item>Химна Светом Сави</item>
<item>Српска Химна "Боже правде"</item>
</string-array>
現在,當用戶點擊一個項目我想顯示擴展的文本爲此觀點。在哪裏存儲這些文本?如果我將文本存儲在字符串數組中,那麼我不知道如何引用它中的單個項目。 也許對每一個項目進行字符串某個名字,當用戶點擊項目列表視圖中有switch語句,像這樣:
public class Molitva extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.molitva);
Bundle bundle = this.getIntent().getExtras();
int pozicija = bundle.getInt("pozicija");
TextView tv = (TextView) this.findViewById(R.id.textView1);
tv.append(" - " + getPrayerText(pozicija));
}
}
是,對於選擇列表項,你建議我有什麼好的做法?這個怎麼做?
好的答案,但像Josephus Villarey說的那樣簡單,因爲他的解決方案不需要外部庫。我會有最多30個,也許40個祈禱。 – 2012-02-01 15:28:00
確定它是:)我只是喜歡抽象,並且害怕在ids中混亂:) – logcat 2012-02-01 16:08:39