У меня есть поле EditText
, которое используется для ввода имен. Как только имена будут введены и нажата кнопка добавления, мне нужно, чтобы имя было сохранено в Array
, которое может быть использовано в следующем действии, а также очистить поле EditText
. Я думаю, что у меня это работает, но не уверен, правильно ли вы видите код ниже.Добавить виды в пределах OnClick
Мой экстренный вопрос немного отличается при нажатии кнопки добавления. Мне также нужно, чтобы оно отображало имя, которое было добавлено рядом с кнопкой добавления, с помощью собственной кнопки удаления, и если добавлено больше, они должны появиться ниже, вид списка. Если щелкнуть кнопку удаления, необходимо удалить имя и удалить кнопку с экрана и имя из массива.
Кодекс был обновлен Я пытаюсь заполнить ListView с адаптером, но без sucsess до сих пор
Я имею в виду что-то вроде добавления TextView
и Button
в методе onClick
. И когда нажата кнопка Remove
, мне нужно будет удалить строку TextView
из playerList. Думаю, мне также придется удалить View
, чтобы его больше не видно.
Может ли кто-нибудь помочь мне на кодовой стороне этого, похоже, не понять это.
public class AddRemove extends Activity {
ArrayList<String> playerList = new ArrayList<String>();
String playerlist[];
ListView listview;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.addremove);
ListView listView = (ListView)findViewById(R.id.namelistview);
listview.setAdapter(new myAdapter(getApplicationContext(), R.layout.listview_content, list));
Button confirm = (Button) findViewById(R.id.add);
confirm.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
EditText playername = (EditText) findViewById(R.id.userinput);
String name = playername.getText().toString();
playerList.add(name);
playername.setText("");
}});
Button play = (Button) findViewById(R.id.playnow);
play.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Intent i = new Intent(demo.AddRemove.this, demo.PasswActivity.class);
Bundle extras = new Bundle();
extras.putSerializable("com.example.playerList", playerList);
i.putExtras(extras);
startActivity(i);
}});
}
class myAdapter extends ArrayAdapter{
List<String> users;
public myAdapter(Context context, int textViewResourceId, List<String> list) {
super(context, textViewResourceId);
// assign list
users = list;
// TODO Auto-generated constructor stub
}
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
return super.getView(position, convertView, parent);
}
}
}
listview_content XML
<TextView
android:id="@+id/playername"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
<Button
android:id="@+id/remove"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Remove" />
Итак, я могу добавить 'Button' и' TextView' в 'ListView' в моем XML? Можете ли вы запустить меня с помощью java или мы можем присоединиться к чату? – Matt
+1. ListView с пользовательским адаптером кажется лучшим вариантом в вашем случае. –