ตัวอย่างการตรวจสอบว่า Item ใน ListView ถูกเลือกอยู่หรือไม่ : Android
 

Tutorial :: Android :: ตัวอย่างการใช้งาน :: ตัวอย่างการตรวจสอบว่า Item ใน ListView ถูกเลือกอยู่หรือไม่

ในบทความนี้ จะแสดงให้เห็นถึงตัวอย่างการตรวจสอบว่า Item ใน ListView ถูกเลือกอยู่หรือไม่ โดยจะแสดงให้เห็นถึงการเขียนคำสั่งภายใน Class Activity, การเขียนคำสั่งภายในไฟล์ XML Layout, การเขียนคำสั่งภายในไฟล์ XML Strings, และการประกาศ Activity ไว้ภายในไฟล์ AndroidManifest.xml ดังนี้


การเขียนคำสั่งภายใน Class Activity

  • package nutt.me.activity;
  •  
  • import android.app.Activity;
  • import android.os.Bundle;
  • import android.view.View;
  • import android.widget.AdapterView;
  • import android.widget.ArrayAdapter;
  • import android.widget.ListView;
  • import android.widget.Toast;
  •  
  • public class MainActivity extends Activity
  • {
  • public void onCreate ( Bundle savedInstanceState )
  • {
  • super.onCreate ( savedInstanceState );
  •  
  • this.setContentView ( R.layout.activity_main );
  •  
  •  
  • String [ ] list = getResources ( ).getStringArray ( R.array.listview_list );
  •  
  • ArrayAdapter < String > dataAdapter = new ArrayAdapter < String > ( this, android.R.layout.simple_list_item_multiple_choice, list );
  •  
  •  
  • ListView listview = ( ListView ) this.findViewById ( R.id.listview );
  •  
  • listview.setAdapter ( dataAdapter );
  •  
  • listview.setChoiceMode ( ListView.CHOICE_MODE_MULTIPLE );
  •  
  • listview.setOnItemClickListener ( new AdapterView.OnItemClickListener ( )
  • {
  • public void onItemClick ( AdapterView < ? > parent, View view, int position, long id )
  • {
  • Object item = parent.getItemAtPosition ( position );
  •  
  • String label = item.toString ( );
  •  
  •  
  • ListView listView = ( ListView ) view.getParent ( );
  •  
  • boolean isItemChecked = listView.isItemChecked ( position );
  •  
  •  
  • if ( isItemChecked )
  • {
  • Toast toast = Toast.makeText ( MainActivity.this, "Checked " + label, Toast.LENGTH_LONG );
  •  
  • toast.show ( );
  • }
  • else
  • {
  • Toast toast = Toast.makeText ( MainActivity.this, "UnChecked " + label, Toast.LENGTH_LONG );
  •  
  • toast.show ( );
  • }
  • }
  • }
  • );
  • }
  • }

จากคำสั่งข้างต้น สามารถอธิบายได้ว่า คำสั่ง ListView listview = ( ListView ) this.findViewById ( R.id.listview ); ในบรรทัดที่ 25 เป็นการสร้าง Object ListView โดยการไปค้นหามาจาก XML Layout และคำสั่ง boolean isItemChecked = listView.isItemChecked ( position ); ในบรรทัดที่ 42 เป็นการตรวจสอบว่า Item ใน ListView ถูกเลือกอยู่หรือไม่ แล้วนำค่าที่ได้มาเก็บไว้ที่ตัวแปรประเภท boolean


การเขียนคำสั่งภายในไฟล์ XML Layout

  • <?xml version="1.0" encoding="utf-8"?>
  • <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
  • android:layout_width="fill_parent"
  • android:layout_height="fill_parent">
  •  
  • <ListView
  • android:id="@+id/listview"
  • android:layout_width="fill_parent"
  • android:layout_height="wrap_content" />
  •  
  • </RelativeLayout>

จากคำสั่งข้างต้น สามารถอธิบายได้ว่า element <ListView> มี id คือ listview (ประกาศไว้ในบรรทัดที่ 7) ซึ่งถูกใช้อ้างอิงใน Class Activity ข้างต้น


การเขียนคำสั่งภายในไฟล์ XML Strings

  • <?xml version="1.0" encoding="utf-8"?>
  • <resources>
  •  
  • <string name="app_name">ListView</string>
  •  
  • <string-array name="listview_list">
  • <item>Blue</item>
  • <item>Green</item>
  • <item>Brown</item>
  • </string-array>
  •  
  • </resources>

จากคำสั่งข้างต้น สามารถอธิบายได้ว่า ให้ตั้งชื่อไฟล์คือ strings.xml และจัดเก็บไว้ใน Resource Folder ชื่อ "res/values"


การประกาศ Activity ไว้ภายในไฟล์ AndroidManifest.xml

  • <?xml version="1.0" encoding="utf-8"?>
  • <manifest ... >
  • <application ... >
  • <activity android:name="nutt.me.activity.MainActivity" ... >
  • <intent-filter>
  • <action android:name="android.intent.action.MAIN" />
  • <category android:name="android.intent.category.LAUNCHER" />
  • </intent-filter>
  • </activity>
  • </application>
  • </manifest>

จากคำสั่งข้างต้น สามารถอธิบายได้ว่า มีการประกาศ Activity ชื่อ MainActivity ที่อยู่ใน Package nutt.me.activity ไว้ภายในไฟล์ AndroidManifest.xml ในบรรทัดที่ 4


หน้าจอแสดงผลของ ตัวอย่างการตรวจสอบว่า Item ใน ListView ถูกเลือกอยู่หรือไม่ จากการเขียนคำสั่งข้างต้น

หน้าจอแสดงผลของ ตัวอย่างการตรวจสอบว่า Item ใน ListView ถูกเลือกอยู่หรือไม่

จากรูปแสดงหน้าจอของ MainActivity

หน้าจอแสดงผลของ ตัวอย่างการตรวจสอบว่า Item ใน ListView ถูกเลือกอยู่หรือไม่

จากรูปแสดงหน้าจอของ MainActivity เมื่อเลือก Item "Blue"

หน้าจอแสดงผลของ ตัวอย่างการตรวจสอบว่า Item ใน ListView ถูกเลือกอยู่หรือไม่

จากรูปแสดงหน้าจอของ MainActivity เมื่อยกเลิกการเลือก Item "Blue"

Download This Example

0 Comment

  • Have no comment.

Comment Tutorial

 
 
 
 
Share This Topic Login with Facebook