0
我的問題圍繞提醒Spinner
的。我試圖讓用戶最多添加5條提醒。但我也不想顯示全部五個。這些提示每個Spinner
有多種選擇。當用戶點擊添加提醒時,它會這樣做。當他們想要拿走一個,他們也可以做到這一點,當他們想要添加另一個,新的出現在底部。任何想法如何去做這件事?如何添加動態微調以及刪除它們?
我原來的實現是有5個已經定義的(4「消失」),但是如果用戶想要添加一個,它就變成了「可見」。問題在於,如果您從視圖中提醒並將其添加回去,它不會在底部顯示,而是返回原來的位置(除非它已經是最後一個微調框) 。現在我迷失瞭如何在特定視圖下動態添加spinners。任何想法將不勝感激!
編輯:我有什麼到目前爲止/ RemindersAdapter.java
public class RemindersAdapter extends BaseAdapter{
ArrayList<Spinner> shownReminders;
public RemindersAdapter(Context c) {
shownReminders.add(new Spinner(c));
shownReminders.add(new Spinner(c));
shownReminders.add(new Spinner(c));
shownReminders.add(new Spinner(c));
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return shownReminders.size();
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return shownReminders.get(position);
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return position;
}
@Override
public View getView(int position, View view, ViewGroup parent) {
if(view == null) {
LayoutInflater inflater = LayoutInflater.from(parent.getContext());
view = inflater.inflate(R.layout.reminder_spinner, parent, false);
}
Log.d("TAG", "This is trying to run");
Spinner reminderSpinner = (Spinner)view.findViewById(R.id.duplicate_reminder);
reminderSpinner.setTag("1"); //this tag will be used to check which it is and correctly put the reminder into its respective String
ArrayAdapter<CharSequence> reminderAdapter = ArrayAdapter.createFromResource(
parent.getContext(), R.array.reminders_array, android.R.layout.simple_spinner_item);
reminderAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
reminderSpinner.setAdapter(reminderAdapter);
reminderSpinner.setOnItemSelectedListener(new MyOnReminderSelectedListener());
shownReminders.add(position, reminderSpinner);
return view;
}
/*
* Listener for when the reminder spinner gets a value the user entered
* */
public class MyOnReminderSelectedListener implements OnItemSelectedListener{
@Override
public void onItemSelected(AdapterView<?> parent, View view, int pos,
long id) {
//does nothing for now
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// Do nothing for now
}
}//end of MyOnReminderSelectedListener innerclass
我有麻煩設置它。就像我不確定如何正確地做到這一點。我正在使用'ListView'來擴展'BaseAdapter',但它不起作用。對我來說最難的部分是添加一個動態的「微調」。 – Andy 2012-07-08 22:59:50