リストビューをクリックした後、ボタンとEdittextが入ったミニフォームを表示したい。
これはインターネットからのコードです。リストビューアイテムを長押しした後、ボタンとテキストボックスを含む単純なフォームを表示するにはどうすればよいですか。
AndroidStudioを使用しています。
public class sample extends Activity{
SimpleAdapter simpleAdpt;
private EditText pass;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.sample);
initList();
// We get the ListView component from the layout
ListView lv = (ListView) findViewById(R.id.listView);
simpleAdpt = new SimpleAdapter(this, planetsList, android.R.layout.simple_list_item_1, new String[] {"planet"}, new int[] {android.R.id.text1});
lv.setAdapter(simpleAdpt);
List<Map<String, String>> planetsList = new ArrayList<Map<String,String>>();
private void initList() {
planetsList.add(createPlanet("planet", "Mercury"));
planetsList.add(createPlanet("planet", "Venus"));
planetsList.add(createPlanet("planet", "Mars"));
planetsList.add(createPlanet("planet", "Jupiter"));
planetsList.add(createPlanet("planet", "Saturn"));
planetsList.add(createPlanet("planet", "Uranus"));
planetsList.add(createPlanet("planet", "Neptune"));
}
private HashMap<String, String> createPlanet(String key, String name) {
HashMap<String, String> planet = new HashMap<String, String>();
planet.put(key, name);
return planet;
}
ItemLongClickListener
次のように実装することをお勧めします。
lv.setOnItemLongClickListener(new OnItemLongClickListener() {
public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
int pos, long id) {
// TODO Auto-generated method stub
//do what you want to do.
//If you want to delete that entry.
lv.remove(arg2);//where arg2 is position of item you click
myAdapter.notifyDataSetChanged();
return true;
}
});
ここで、textBox
andボタンをとして表示したい場合、AlertDialog
または別のページに移動したい場合が問題です。
textBox付きのポップアップである必要がある場合
AlertDialog.Builder alert = new AlertDialog.Builder(this);
alert.setTitle("Title");
alert.setMessage("Message");
// Set an EditText view to get user input
final EditText input = new EditText(this);
alert.setView(input);
alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
// Do something with value!
}
});
alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
// Canceled.
}
});
alert.show();
ページに移動する必要がある場合
Intent intent = new Intent(ActivityA.this, ActivityB.class);
startActivity(intent);
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加