0

我想在该列表中创建一个像上面一样的弹出列表,会有不同的距离,当我单击该距离中的距离时,将从以下列表中显示该距离的描述。请帮助至少告诉如何制作弹出列表。安卓感谢

在此处输入图像描述

4

2 回答 2

2

我认为您指的是Spinner。它非常易于使用。如果您只为下拉列表使用一组特定的值,则可以使用字符串数组资源作为 Spinner 的数据源。在值目录下的 XML 中定义一个像这样的数组。将尽可能多的项目放入 Spinners 下拉列表中。

<string-array name="distances">
    <item>1 Mile</item>
    <item>2 Miles</item>
</string-array>

在布局文件中定义一个 Spinner 小部件

<Spinner
    android:id="@+id/spinnerDistances"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" />

然后在任何活动中使用该布局:

Spinner spinner = (Spinner) findViewById(R.id.spinnerDistances);
// Create an ArrayAdapter using the string array and a default spinner layout
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
R.array.distances, android.R.layout.simple_spinner_item);
// Specify the layout to use when the list of choices appears
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
// Apply the adapter to the spinner
spinner.setAdapter(adapter);

不要忘记为微调器定义一个事件侦听器,以便当用户在微调器上选择某些内容时程序可以执行某些操作。

编辑:要在从微调器中选择项目时执行某些操作,您需要覆盖 OnItemSelectedListener.onItemSelected() 并将微调器设置为通过 Spinner.setOnItemSelectedListener() 使用该侦听器。您可以通过使您的类实现 OnItemSelectedListener 并实现所需的方法或类似的东西来做到这一点:

mySpinner.setOnItemSelectedListener(new OnItemSelectedListener()
    @Override
    public void onItemSelected(AdapterView<?> parent, View view, int position, long id)         
    {
    // TODO Auto-generated method stub
}

    @Override
public void onNothingSelected(AdapterView<?> parent) {
// TODO Auto-generated method stub
}
);
于 2012-10-06T00:28:10.133 回答
0

那么你可以在android中创建活动

<activity
            android:name=".youractivityname"
            android:screenOrientation="portrait"
            android:theme="@android:style/Theme.Dialog" />

并在此活动中添加列表视图,并在列表中添加您想要的项目。主题对话框将您的活动创建为对话框并显示为一种弹出窗口如果这对您有帮助,请告诉我

于 2012-10-05T18:02:46.983 回答