在我的应用程序中,有一个列表视图,其中包含一些数据。在同一活动中有一个edittext和一个按钮。当我在edittext中输入某些内容时,我想将该文本添加到按钮单击的ListView上。如何做到这一点?请帮助...如何将项目添加到按钮单击列表视图?
这里是我的代码示例...
这是我customList适配器
public class MainActivity extends Activity
{
ListView list;
String[] web = {
"Google Plus",
"Twitter",
"Windows",
"Bing",
"Itunes",
"Wordpress",
"Drupal"
} ;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
EditText et = (EditText)findViewById(R.id.editText1);
Button b=(Button)findViewById(R.id.button1);
b.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
Toast.makeText(MainActivity.this, "Button clicked...", Toast.LENGTH_SHORT).show();
}
});
CustomList adapter = new CustomList(MainActivity.this, web);
list=(ListView)findViewById(R.id.list);
list.setAdapter(adapter);
list.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
Toast.makeText(MainActivity.this, "You Clicked at " +web[+ position], Toast.LENGTH_SHORT).show();
}
});
这是我的适配器类
public class CustomList extends ArrayAdapter<String>{
private final Activity context;
private final String[] web;
public CustomList(Activity context, String[] web) {
super(context, R.layout.list_single, web);
this.context = context;
this.web = web;
}
@Override
public View getView(int position, View view, ViewGroup parent) {
LayoutInflater inflater = context.getLayoutInflater();
View rowView= inflater.inflate(R.layout.list_single, null, true);
TextView txtTitle = (TextView) rowView.findViewById(R.id.txt);
txtTitle.setText(web[position]);
return rowView;
}
}
获取文本。将它添加到数组并在适配器上调用notifyDataSetChanged。您也可以使用ArrayList – Raghunandan