现在我正在使用微调器,但微调器的外观不同。我想在屏幕上显示下拉列表 请帮助
问问题
599 次
3 回答
1
如果可以以默认方式完成,为什么要这样实现。
这里仍然是一个创建快速操作对话框的详细示例: 如何在 Android或NewQuickAction中创建 QuickAction 对话框。
更新:
您可以使用本机PopupMenu来显示与上述相同的选项。
于 2013-03-19T07:00:45.197 回答
1
我认为以下两个链接都可能对您有所帮助:
于 2013-03-19T07:34:46.870 回答
0
如果你想创建这样你需要使用对话框..它将显示为你想要的。将向下箭头视为一个按钮。并且项目显示为列表视图。
public class MainActivity extends Activity {
Button dialogButton;
Dialog dialog;
String[] gender={"Male","Female"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
{
dialogButton=(Button) findViewById(R.id.dialog_button);
dialogButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Toast.makeText(getApplicationContext(), "Button clicked",Toast.LENGTH_SHORT).show();
showDialogMatch();
}
});
protected void showDialogMatch() {
// TODO Auto-generated method stub
dialog=new Dialog(this);
dialog = new Dialog(this,android.R.style.Theme_Translucent_NoTitleBar);
dialog.setContentView(R.layout.match_type_dialog);
LayoutParams lp=dialog.getWindow().getAttributes();
lp.x=260;lp.y=350;lp.width=280;lp.height=280;lp.gravity=Gravity.BOTTOM | Gravity.LEFT;
lp.dimAmount=0;
lp.flags=LayoutParams.FLAG_LAYOUT_NO_LIMITS | LayoutParams.FLAG_NOT_TOUCH_MODAL;
dialog.show();
ListView lvview=(ListView) dialog.findViewById(R.id.listView1);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,gender);
lvview.setAdapter(adapter);
}
而你的 match_type_dialog xml 是这样的
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@drawable/switch_base">
<ListView
android:id="@+id/listView1"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
</ListView>
于 2013-03-19T07:14:49.770 回答