[英]popup menu for spinner in android
我想要帶有'A','B','C'項目的微調器
如果您選擇“ A”或“ B”,則表示天文鍾必須運行。
選擇項目“ C”時,彈出窗口將打開兩個帶有edittext和“確定”按鈕的窗口。
如果您在edittext中輸入'D',則表示在旋轉器中也添加了D,但必須運行測斜儀
這是我的代碼:
public class Starttracker extends Activity {
PopupWindow popupWindow;
String[] Items = {
"A",
"B",
"C",
"D",
};
Spinner s1;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.start);
s1 = (Spinner) findViewById(R.id.spinner);
final ArrayAdapter<String> adapter = new ArrayAdapter<String>(
this,android.R.layout.simple_spinner_item,Items);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
s1.setAdapter(adapter);
s1.setOnItemSelectedListener(new OnItemSelectedListener()
{
public void onItemSelected(AdapterView<?> arg0,
View arg1, int arg2, long arg3)
{
int index = s1.getSelectedItemPosition();
Toast.makeText(getBaseContext(),
"You have selected item : " + Items[index],
Toast.LENGTH_SHORT).show();
if (index==3)
{
LayoutInflater inflater = (LayoutInflater) Starttracker.this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
popupWindow = new PopupWindow(inflater.inflate(R.layout.popup,null, false),300,100,true);
// RelativeLayout01 is Main Activity Root Layout
popupWindow.showAtLocation(findViewById(R.id.relativelayout), Gravity.CENTER, 0,0);
} else
{
Chronometer chrono=(Chronometer)findViewById(R.id.chronometer);
chrono.start();
}
}
public void onNothingSelected(AdapterView<?> arg0) {}
});
}
對我有什么幫助
final String[] items = {"A", "B", "C"};
final AlertDialog.Builder builder = new AlertDialog.Builder(context);
builder.setTitle("Choose me!");
builder.setItems(items, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int item) {
if ("A".equals(items[item]) || "B".equals(items[item])) {
// run whatever...
}
if ("C".equals(items[item])) {
final EditText edit = new EditText(context);
final Builder builder = new AlertDialog.Builder(context);
builder.setTitle("Choose a custom option.");
builder.setView(edit);
builder.setPositiveButton("Save", new OnClickListener() {
public void onClick(final DialogInterface dialog, final int which) {
String input = edit.getText().toString();
// add input to array, or do whatever.
dialog.dismiss();
}
});
builder.create().show();
}
dialog.dismiss();
}
});
builder.create().show();
我沒有測試它(直接從我的腦海中寫出來),但是它應該可以進行一些修改。
祝好運
湯姆
嘗試使用此代碼。.公共類Starttracker擴展了Activity {
String[] Items = {
"A",
"B",
"C",
"D",
};
Spinner s1;
@Override public void onCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState); 的setContentView(R.layout.start);
s1 =(Spinner)findViewById(R.id.spinner);
final ArrayAdapter<String> adapter = new ArrayAdapter<String>(
this,android.R.layout.simple_spinner_item,Items);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
s1.setAdapter(adapter);
} public boolean onItemSelected(AdapterView parent,View v,int position,long id){
if (((items[position])=="A")||((items[position])=="B")) {
計時碼表chrono =(Chronometer)findViewById(R.id.chronometer); chrono.start(); }} // .....
GoodLuck
答案是我的問題:
{
int size=tempArray.length;
for(int i=0;i<size;i++){
Items.add(tempArray[i]);
}
和
if(index==3)
{
final Dialog dialog=new Dialog(Starttracker.this);
dialog.setContentView(R.layout.popup);
dialog.setTitle("Enter The Item");
dialog.setCanceledOnTouchOutside(true);
final EditText filename=(EditText)dialog.findViewById(R.id.filename);
filename.setText("");
Button d_ok=(Button)dialog.findViewById(R.id.d_ok);
Button d_cancel=(Button)dialog.findViewById(R.id.d_cancel);
d_ok.setOnClickListener(new OnClickListener(){
public void onClick(View arg0) {
// TODO Auto-generated method stub
String textHolder = filename.getText().toString();
dialog.dismiss();
Items.add(textHolder);
// s1.setAdapter(adapter);
// notifyDataSetChanged();
}
});
d_cancel.setOnTouchListener(new OnTouchListener(){
public boolean onTouch(View v,MotionEvent me){
dialog.dismiss();
return false;
}
});
dialog.show();
return;
}
非常感謝大家
我項目的無恥插件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.