2015-10-01 203 views
-2

我想为我的应用程序创建一个语言选择器。我在菜单布局中创建了一个按钮,并且在单击某个选项菜单时我想要打开微调框。我是初学者,所以如果你能解释你的答案,我很乐意。android |从菜单按钮创建对话框微调按钮

+0

Android已经在纱厂指南内下面的方法:http://developer.android.com/guide/topics/ui /controls/spinner.html – RobVoisey

+0

[微星在android]中可能的重复(http://stackoverflow.com/questions/12892782/spinner-in-android) –

回答

0

首先你必须创建一个XML布局在您的微调元素会被放置

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     android:orientation="vertical" 
     android:padding="10dip" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content"> 



<!-- Spinner Element --> 
<Spinner 
    android:id="@+id/spinner" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:prompt="Select Language" 
/> 

</LinearLayout> 

然后我你的活动在那里你想显示剪断你应该实现OnItemSelectedListener接口处理微调

public class SnipperActivity extends Activity implements OnItemSelectedListener{ 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    //here you get the reference to the spinner element declared in your xml layout 
    Spinner spinner = (Spinner) findViewById(R.id.spinner); 


    //set the listener to the spinner 
    spinner.setOnItemSelectedListener(this); 

//here you create an arraylist for the items to be displayed in your spinner element 
    List<String> languages = new ArrayList<String>(); 
    languages.add("English"); 
    languages.add("Greek"); 
    } 

//define an adapter for the spinner 
    ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, languages); 


//set the style of the snipper, in this case a listview with a radio button    

dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_it EM)的选择;

//attach the adapter to your spinner element 
    spinner.setAdapter(dataAdapter); 

} 

处理微调元素的选择,你必须ovveride SnipperActivity类

@Override 
public void onItemSelected(AdapterView parent, View view, int position, long id) { 
    // On selecting a spinner item 
    String language = parent.getItemAtPosition(position).toString(); 

    //show a spinner item 
    Log.e("TAG", "Spinner item selected " + language); 


}