1-系統方案A(系統方案演示和執行第一個Android程式,ListView顯示資料,刪除資料)
阿新 • • 發佈:2018-11-16
系統教程初步要做到的就是12節和13節所演示的
12節: https://www.cnblogs.com/yangfengwu/p/9966702.html
13節: https://www.cnblogs.com/yangfengwu/p/9966901.html
https://www.cnblogs.com/yangfengwu/p/9065406.html 安裝Android Studio
https://www.cnblogs.com/yangfengwu/p/9142929.html 匯入工程
APP已經能運行了。。。
因為開發這個系統需要一些jar包,所以匯入用到的jar包
現在測試顯示幾個資料
public class MainActivity extends AppCompatActivity { ListView listView1;static ArrayList<String> ArrayListClientId = new ArrayList<String>();//儲存ListView的資料 ArrayAdapter<String> adapter;//為ListView新增一個介面卡 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ArrayListClientId.add("1"); ArrayListClientId.add("2"); ArrayListClientId.add("3"); listView1 = findViewById(R.id.ListView1); adapter = new ArrayAdapter<String>(MainActivity.this,android.R.layout.simple_list_item_1,ArrayListClientId); listView1.setAdapter(adapter); } }
再做一個長按的操作
然後自己可以試一試用自己的手指長按和點選
所以就做一個變數控制下,長按以後別執行點選裡面的
public class MainActivity extends AppCompatActivity { ListView listView1; static ArrayList<String> ArrayListClientId = new ArrayList<String>();//儲存ListView的資料 ArrayAdapter<String> adapter;//為ListView新增一個介面卡 boolean LongClick = false; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ArrayListClientId.add("1"); ArrayListClientId.add("2"); ArrayListClientId.add("3"); listView1 = findViewById(R.id.ListView1); adapter = new ArrayAdapter<String>(MainActivity.this,android.R.layout.simple_list_item_1,ArrayListClientId); listView1.setAdapter(adapter); listView1.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { if (!LongClick){ Toast.makeText(MainActivity.this,"點選"+ArrayListClientId.get(position),Toast.LENGTH_SHORT).show(); } LongClick = false; } }); listView1.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() { @Override public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) { Toast.makeText(MainActivity.this,"長按"+ArrayListClientId.get(position),Toast.LENGTH_SHORT).show(); LongClick = true; return false; } }); } }
可以自己再試一試
然後在做一下長按刪除
public class MainActivity extends AppCompatActivity { ListView listView1; static ArrayList<String> ArrayListClientId = new ArrayList<String>();//儲存ListView的資料 ArrayAdapter<String> adapter;//為ListView新增一個介面卡 boolean LongClick = false; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ArrayListClientId.add("1"); ArrayListClientId.add("2"); ArrayListClientId.add("3"); listView1 = findViewById(R.id.ListView1); adapter = new ArrayAdapter<String>(MainActivity.this,android.R.layout.simple_list_item_1,ArrayListClientId); listView1.setAdapter(adapter); listView1.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { if (!LongClick){ Toast.makeText(MainActivity.this,"點選"+ArrayListClientId.get(position),Toast.LENGTH_SHORT).show(); } LongClick = false; } }); listView1.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() { @Override public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) { Toast.makeText(MainActivity.this,"長按"+ArrayListClientId.get(position),Toast.LENGTH_SHORT).show(); LongClick = true; showNormalDialog(position); return false; } }); } private void showNormalDialog(final int index){ final AlertDialog.Builder normalDialog = new AlertDialog.Builder(MainActivity.this); normalDialog.setTitle("刪除裝置"); normalDialog.setMessage("確定要刪除裝置嗎?"); normalDialog.setPositiveButton("刪除", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { ArrayListClientId.remove(index); adapter.notifyDataSetChanged(); } }); normalDialog.setNegativeButton("取消", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { } }); normalDialog.show();// 顯示 } }
好了這是第一節