Spinner显示列表中第一个项目的名称

问题描述 投票:0回答:1

你好我是android的新手。我创造了一个微调器。微调器上有一些项目,问题是第一个项目的名称会自动显示,并在开始时显示微调器的图标。我如何制作微调器,使得最初只能看到图标?

以下是我的阵列

<string-array name="settingSpinner">
    <item>change pw</item>
    <item>Log Out</item>

</string-array>

在主班

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
            android.R.layout.simple_spinner_item, getResources()
            .getStringArray(R.array.settingSpinner));
    adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    settings.setAdapter(adapter);

    settings.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
        @Override
        public void onItemSelected(AdapterView<?> arg0, View arg1,
                                   int position, long id) {
            Object item = arg0.getItemAtPosition(position);
            Toast.makeText(getApplicationContext(),String.valueOf(item),Toast.LENGTH_SHORT).show();
        }

        @Override
        public void onNothingSelected(AdapterView<?> arg0) {
        }
    });
android drop-down-menu spinner
1个回答
1
投票

Solution 1

您可以在数组的第一个索引处添加占位符文本。

<string-array name="settingSpinner">
    <item>Choose Action</item> // add this placeholder
    <item>change pw</item>
    <item>Log Out</item>    
</string-array>

如果index不为0,则选中何时选中。

    @Override
    public void onItemSelected(AdapterView<?> arg0, View arg1,
                               int position, long id) {
    if(position != 0) // proceed further
    }

Solution 2

在第一个位置添加黑色字符串

<string-array name="settingSpinner">
    <item> </item>
    <item>change pw</item>
    <item>Log Out</item>    
</string-array>

这将在活动开始时在Spinner上显示黑色空间。

© www.soinside.com 2019 - 2024. All rights reserved.