Board logo

標題: Android App - List [打印本頁]

作者: admin    時間: 2012-1-24 17:56     標題: Android App - List


<< 顯示多選式清單>>
[attach]993[/attach]
建立新程式, package 名為sample.multiplechoicelist,

MultichoicelistActivity.java 檔案內容

package sample.multiplechoicelist;

import android.app.ListActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;

/**
* This example shows how to use choice mode on a list. This list is
* in CHOICE_MODE_MULTIPLE mode, which means the items behave like
* checkboxes.
*/
public class MultichoicelistActivity extends ListActivity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        setListAdapter(new ArrayAdapter<String>(this,
                android.R.layout.simple_list_item_multiple_choice, GENRES));

        final ListView listView = getListView();

        listView.setItemsCanFocus(false);
        listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
    }

    private static final String[] GENRES = new String[] {
        "明治 青提朱古力橡皮糖96克", "萬樂珠 薄荷味37.5克",
        "瑞士糖 黑加侖味條裝49克", "瑞士糖 草莓口味條裝49克",
        "益達 香橙薄荷味袋裝28克", "爽浪 無糖香口珠 橙薑味28克",
        "爽浪 無糖香口珠 檸蜜味28克", "爽浪 無糖香口珠 西柚薄味28克",
        "爽浪無糖香口珠 超涼薄荷味28克", "珍寶珠 迷你珍寶珠 5支裝 30克",
        "利口樂潤喉糖 檸檬香草50克", "利口樂潤喉糖 接骨木花香草50克",
        "利口樂潤喉糖 黑加侖子香草50克", "得力素 檸檬糖10pc"
    };
}

<< 顯示單選式清單>>
[attach]994[/attach]
]把上面的程式稍為改一下便可得到以下的效果
simple_list_item_multiple_choice  改為 simple_list_item_single_choice
CHOICE_MODE_MULTIPLE 改為 CHOICE_MODE_SINGLE

<< 顯示純清單>>
[attach]995[/attach]
把simple_list_item_multiple_choice  改為 simple_list_item_1
另外把以下三句
        final ListView listView = getListView();
        listView.setItemsCanFocus(false);
        listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);

變為一句 getListView().setTextFilterEnabled(true);

作者: admin    時間: 2012-1-24 19:31

在上面的程式, 顯示內容都放在 MultichoicelistActivity.java 檔案內, 為了方便動態修改數據, 下面程式把顯示內容放在 strings.xml 內

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="hello">Hello World, MultichoicelistActivity!</string>
    <string name="app_name">盤點</string>
    <string-array name="genres_array">
        <item>明治 青提朱古力橡皮糖96克</item>
        <item>萬樂珠 薄荷味37.5克</item>
        <item>瑞士糖 黑加侖味條裝49克</item>
        <item>瑞士糖 草莓口味條裝49克</item>
        <item>益達 香橙薄荷味袋裝28克</item>
        <item>爽浪 無糖香口珠 橙薑味28克</item>
        <item>爽浪 無糖香口珠 檸蜜味28克</item>
        <item>爽浪 無糖香口珠 西柚薄味28克</item>
        <item>爽浪無糖香口珠 超涼薄荷味28克</item>
        <item>珍寶珠 迷你珍寶珠 5支裝 30克</item>
        <item>利口樂潤喉糖 檸檬香草50克</item>
        <item>利口樂潤喉糖 接骨木花香草50克</item>
        <item>利口樂潤喉糖 黑加侖子香草50克</item>
        <item>得力素 檸檬糖10pc</item>
    </string-array>
</resources>

而 MultichoicelistActivity.java 也要稍作修改, 在  setListAdapter(new ArrayAdapter<String>(this,
        android.R.layout.simple_list_item_1, GENRES)); 之前加入
String[] GENRES = getResources().getStringArray(R.array.genres_array);

而 genres_array 為變數名稱





歡迎光臨 How2Do (http://forum.how2do.com.hk/) Powered by Discuz! 7.2