当前位置:网站首页>Use the list component to realize the drop-down list and address list

Use the list component to realize the drop-down list and address list

2022-07-06 02:05:00 Standing on the shoulders of giants, review the past and know t

The list component contains a drop-down list box (Spinner) And list view (ListView).

 

chart 1 List component inheritance diagram
As can be seen from the above figure ,Spinner and ListView Inherit from ViewGroup, So they all belong to View Containers ; Inherit from AdapterView, So you can display multiple list items .

1 Drop down list box

<Spinner> The basic syntax is as follows :

<Spinner
android:entries="@array/ Array name "
android:prompt="@string/info"
 Other attributes 
>
</Spinner>

android:entries For optional properties , Used to specify list items ;android:prompt For optional properties , Used to specify the title of the drop-down list box .
Spinner: Implementation drop down list
MainActivity.java

public class MainActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Spinner spinner = (Spinner) findViewById(R.id.spinner);
        //  Create a listening event for the drop-down list 
        spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
            @Override
            public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
                String result = parent.getItemAtPosition(position).toString();
                Toast.makeText(MainActivity.this,result,Toast.LENGTH_SHORT).show();
            }
            @Override
            public void onNothingSelected(AdapterView<?> parent) {

            }
        });
    }
}

https://github.com/hanyuhang-hz/android-demos

2 List view

<ListView> The basic syntax is as follows :

<ListView
 Property list 
>
</ListView>

ListView Commonly supported xml The attributes are shown in the table 2:

xml attribute

describe

android:divider

Set the separator bar for the list view

android:dividerHeight

Set the height of the separator

android:entries

Through the array, the resource is ListView Specify the list item

android:footerDividersEnabled

Is the setting footer View( Bottom view ) Draw the divider bar before

android:headerDividersEnabled

Is the setting header View( Head view ) Then draw the separator

surface 2 ListView Commonly supported xml attribute
ListView: Realize the address book list
MainActivity.java

public class MainActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        ListView listview = (ListView) findViewById(R.id.listview);
        int[] imageId = new int[]{R.mipmap.img01, R.mipmap.img02, R.mipmap.img03,
                R.mipmap.img04, R.mipmap.img05, R.mipmap.img06,
                R.mipmap.img07, R.mipmap.img08, R.mipmap.img09,
        };
        String[] title = new String[]{" that ", " Chen er ", " Zhang San ", " Li Si ", " Wang Wu ",
                " Zhao Liu ", " Sun Qi ", " Tuesday ", " Wu Jiu "};
        List<Map<String, Object>> listItems = new ArrayList<Map<String, Object>>();
        for (int i = 0; i < imageId.length; i++) {
            Map<String, Object> map = new HashMap<String, Object>();
            map.put("image", imageId[i]);
            map.put(" name ", title[i]);
            listItems.add(map);
        }
        SimpleAdapter adapter = new SimpleAdapter(this, listItems,
                R.layout.main, new String[] { " name ", "image" }, new int[] {
                R.id.title, R.id.image });
        //  Connect the adapter to ListView relation 
        listview.setAdapter(adapter);
        listview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                Map<String, Object> map = ( Map<String, Object> )parent.getItemAtPosition(position);
                Toast.makeText(MainActivity.this,map.get(" name ").toString(),Toast.LENGTH_SHORT).show();
            }
        });
    }
}

GitHub - hanyuhang-hz/android-demos

原网站

版权声明
本文为[Standing on the shoulders of giants, review the past and know t]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/02/202202140042264811.html