乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      ListView和各種Adapter的使用

       敬而遠(yuǎn) 2012-12-04
      1,和最簡(jiǎn)單的ArrayAdapter的使用:
      Java代碼  收藏代碼
      1. package com.wt.app;  
      2.   
      3. import android.app.ListActivity;  
      4. import android.os.Bundle;  
      5. import android.widget.ArrayAdapter;  
      6. import android.widget.ListAdapter;  
      7.   
      8. public class App extends ListActivity {  
      9.     String[] array={/*"aaa","bbb","ccc"*/};  
      10.     /** Called when the activity is first created. */  
      11.     @Override  
      12.     public void onCreate(Bundle savedInstanceState) {  
      13.         super.onCreate(savedInstanceState);  
      14.         setContentView(R.layout.main);  
      15.         //為空時(shí)的顯示內(nèi)容  
      16.         this.getListView().setEmptyView(findViewById(R.id.empty));  
      17.           
      18.         ListAdapter adapter=new ArrayAdapter<String>(this,android.R.layout.simple_expandable_list_item_1,array);  
      19.         this.setListAdapter(adapter);  
      20.     }  
      21. }  

      Xml代碼  收藏代碼
      1. <?xml version="1.0" encoding="utf-8"?>  
      2. <LinearLayout xmlns:android="http://schemas./apk/res/android"  
      3.     android:orientation="vertical"  
      4.     android:layout_width="fill_parent"  
      5.     android:layout_height="fill_parent"  
      6.     >  
      7. <ListView   
      8.     android:id="@+id/android:list"  
      9.     android:layout_width="fill_parent"  
      10.     android:layout_height="wrap_content"   
      11.     />  
      12.       
      13. <TextView   
      14.     android:id="@+id/empty"  
      15.     android:layout_width="fill_parent"   
      16.     android:layout_height="wrap_content"   
      17.     android:gravity="center_vertical"  
      18.     android:text="Nothing"  
      19.     />  
      20. </LinearLayout>  


      2,和SimpleAdapter的使用:
      Java代碼  收藏代碼
      1. package com.wt.app;  
      2.   
      3. import java.util.ArrayList;  
      4. import java.util.HashMap;  
      5.   
      6. import android.app.Activity;  
      7. import android.os.Bundle;  
      8. import android.view.ContextMenu;  
      9. import android.view.MenuItem;  
      10. import android.view.View;  
      11. import android.view.ContextMenu.ContextMenuInfo;  
      12. import android.view.View.OnCreateContextMenuListener;  
      13. import android.widget.AdapterView;  
      14. import android.widget.ListView;  
      15. import android.widget.SimpleAdapter;  
      16. import android.widget.AdapterView.OnItemClickListener;  
      17.   
      18. public class App extends Activity {  
      19.     @Override  
      20.     public void onCreate(Bundle savedInstanceState) {  
      21.         super.onCreate(savedInstanceState);  
      22.         setContentView(R.layout.main);  
      23.         //綁定Layout里面的ListView  
      24.         ListView list = (ListView) findViewById(R.id.ListView01);  
      25.           
      26.         //生成動(dòng)態(tài)數(shù)組,加入數(shù)據(jù)  
      27.         ArrayList<HashMap<String, Object>> listItem = new ArrayList<HashMap<String, Object>>();  
      28.         int[] images=new int[]{android.R.drawable.ic_menu_add,android.R.drawable.ic_menu_delete,android.R.drawable.ic_menu_edit,android.R.drawable.ic_menu_view};  
      29.         for(int i=0;i<4;i++)  
      30.         {  
      31.             HashMap<String, Object> map = new HashMap<String, Object>();  
      32.             map.put("itemImage", images[i]);//圖像資源的ID  
      33.             map.put("itemTitle""Title "+i);  
      34.             map.put("itemText""this is Text "+i);  
      35.             listItem.add(map);  
      36.         }  
      37.         //生成適配器的Item和動(dòng)態(tài)數(shù)組對(duì)應(yīng)的元素  
      38.         SimpleAdapter listItemAdapter = new SimpleAdapter(this,listItem,//數(shù)據(jù)源   
      39.             R.layout.row,//ListItem的XML實(shí)現(xiàn)  
      40.             //動(dòng)態(tài)數(shù)組與ImageItem對(duì)應(yīng)的子項(xiàng)          
      41.             new String[] {"itemImage","itemTitle""itemText"},   
      42.             //ImageItem的XML文件里面的一個(gè)ImageView,兩個(gè)TextView ID  
      43.             new int[] {R.id.itemImage,R.id.itemTitle,R.id.itemText}  
      44.         );  
      45.          
      46.         //添加并且顯示  
      47.         list.setAdapter(listItemAdapter);  
      48.         //添加點(diǎn)擊  
      49.         list.setOnItemClickListener(new OnItemClickListener() {  
      50.   
      51.             public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,  
      52.                     long arg3) {  
      53.                 setTitle("點(diǎn)擊第"+arg2+"個(gè)項(xiàng)目");  
      54.             }  
      55.         });  
      56.           
      57.       //添加長(zhǎng)按點(diǎn)擊  
      58.         list.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {  
      59.               
      60.             public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {  
      61.                 menu.setHeaderTitle("長(zhǎng)按菜單-ContextMenu");     
      62.                 menu.add(000"彈出長(zhǎng)按菜單0");  
      63.                 menu.add(010"彈出長(zhǎng)按菜單1");     
      64.             }  
      65.         });   
      66.     }  
      67.       
      68.     //長(zhǎng)按菜單響應(yīng)函數(shù)  
      69.     @Override  
      70.     public boolean onContextItemSelected(MenuItem item) {  
      71.         setTitle("點(diǎn)擊了長(zhǎng)按菜單里面的第"+item.getItemId()+"個(gè)項(xiàng)目");   
      72.         return super.onContextItemSelected(item);  
      73.     }  
      74. }  

      main.xml
      Xml代碼  收藏代碼
      1. <?xml version="1.0" encoding="utf-8"?>  
      2. <LinearLayout xmlns:android="http://schemas./apk/res/android"  
      3.     android:orientation="vertical"  
      4.     android:layout_width="fill_parent"  
      5.     android:layout_height="fill_parent"  
      6.     >  
      7.     <ListView android:layout_width="wrap_content"     
      8.           android:layout_height="wrap_content"     
      9.           android:id="@+id/ListView01"    
      10.     />    
      11. </LinearLayout>\  

      row.xml
      Xml代碼  收藏代碼
      1. <?xml version="1.0" encoding="utf-8"?>  
      2. <RelativeLayout   
      3.     android:id="@+id/RelativeLayout01"   
      4.     android:layout_width="fill_parent"   
      5.     xmlns:android="http://schemas./apk/res/android"   
      6.     android:layout_height="wrap_content"   
      7.     android:paddingTop="4dip"   
      8.     android:paddingBottom="4dip"   
      9.     android:paddingLeft="12dip"  
      10.     android:paddingRight="12dip">  
      11. <ImageView   
      12.     android:paddingTop="12dip"  
      13.     android:layout_alignParentRight="true"  
      14.     android:layout_width="wrap_content"   
      15.     android:layout_height="wrap_content"   
      16.     android:id="@+id/itemImage"  
      17.     />   
      18. <TextView   
      19.     android:layout_height="wrap_content"   
      20.     android:textSize="20dip"   
      21.     android:layout_width="fill_parent"   
      22.     android:id="@+id/itemTitle"  
      23.     />  
      24. <TextView   
      25.     android:layout_height="wrap_content"   
      26.     android:layout_width="fill_parent"   
      27.     android:layout_below="@+id/itemTitle"   
      28.     android:id="@+id/itemText"  
      29.     />  
      30. </RelativeLayout>  


      3,和SimpleCursorAdapter的使用:
      Java代碼  收藏代碼
      1. package com.wt.app;  
      2.   
      3. import android.app.Activity;  
      4. import android.app.PendingIntent;  
      5. import android.content.ContentUris;  
      6. import android.content.Intent;  
      7. import android.database.Cursor;  
      8. import android.database.CursorWrapper;  
      9. import android.graphics.Color;  
      10. import android.net.Uri;  
      11. import android.os.Bundle;  
      12. import android.provider.Contacts.People;  
      13. import android.telephony.PhoneNumberUtils;  
      14. import android.telephony.gsm.SmsManager;  
      15. import android.util.Log;  
      16. import android.view.ContextMenu;  
      17. import android.view.MenuItem;  
      18. import android.view.View;  
      19. import android.view.ContextMenu.ContextMenuInfo;  
      20. import android.view.View.OnCreateContextMenuListener;  
      21. import android.widget.AdapterView;  
      22. import android.widget.LinearLayout;  
      23. import android.widget.ListAdapter;  
      24. import android.widget.ListView;  
      25. import android.widget.SimpleCursorAdapter;  
      26. import android.widget.Toast;  
      27.   
      28. public class App extends Activity {  
      29.     private static final String TAG="App";  
      30.     ListView listView;  
      31.     ListAdapter adapter;  
      32.     /** Called when the activity is first created. */  
      33.     @Override  
      34.     public void onCreate(Bundle savedInstanceState) {  
      35.         super.onCreate(savedInstanceState);  
      36.        // setContentView(R.layout.main);  
      37.         LinearLayout linearLayout=new LinearLayout(this);  
      38.         linearLayout.setOrientation(LinearLayout.VERTICAL);  
      39.         linearLayout.setBackgroundColor(Color.BLACK);  
      40.         LinearLayout.LayoutParams param=new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT,LinearLayout.LayoutParams.WRAP_CONTENT);  
      41.           
      42.         listView=new ListView(this);  
      43.         listView.setBackgroundColor(Color.BLACK);  
      44.           
      45.         linearLayout.addView(listView,param);  
      46.           
      47.         this.setContentView(linearLayout);  
      48.           
      49.         //從數(shù)據(jù)庫(kù)獲取聯(lián)系人姓名和電話號(hào)碼  
      50.         Cursor cur=this.getContentResolver().query(People.CONTENT_URI,nullnull,null,null);  
      51.         adapter=new SimpleCursorAdapter(this,android.R.layout.simple_list_item_2,cur,new String[]{People.NAME,People.NUMBER},new int[]{android.R.id.text1,android.R.id.text2});  
      52.         this.startManagingCursor(cur);  
      53.         listView.setAdapter(adapter);  
      54.         //listView.setEmptyView(findViewById(R.id.empty));  
      55.           
      56.         listView.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener(){  
      57.   
      58.             public void onItemSelected(AdapterView<?> arg0, View arg1,  
      59.                     int arg2, long arg3) {  
      60.                 // TODO Auto-generated method stub  
      61.                 //openToast("滾動(dòng)到:"+arg0.getSelectedItemId());  
      62.                 //短信發(fā)送  
      63. //              PendingIntent pi = PendingIntent.getActivity(App.this,0,new Intent(App.this,App.class),0);  
      64. //              SmsManager sms = SmsManager.getDefault();    
      65. //              sms.sendTextMessage("5554", null, "message", pi, null);   
      66.             }  
      67.   
      68.             public void onNothingSelected(AdapterView<?> arg0) {  
      69.                 // TODO Auto-generated method stub  
      70.                   
      71.             }  
      72.               
      73.         });  
      74.         listView.setOnItemClickListener(new AdapterView.OnItemClickListener(){  
      75.   
      76.             public void onItemClick(AdapterView<?> arg0, View arg1, int position,  
      77.                     long arg3) {  
      78.                 // TODO Auto-generated method stub  
      79. //              String[] names=((CursorWrapper)listView.getItemAtPosition(position)).getColumnNames();  
      80.                 //從指針的封裝類中獲得選中項(xiàng)的電話號(hào)碼并撥號(hào)  
      81.                 CursorWrapper wrapper=(CursorWrapper)listView.getItemAtPosition(position);  
      82.                 int columnIndex=wrapper.getColumnIndex(People.NUMBER);  
      83.                 if(!wrapper.isNull(columnIndex)){  
      84.                     String number=wrapper.getString(columnIndex);  
      85.                     Log.d(TAG,"number="+number);  
      86.     //              //判斷電話號(hào)碼的有效性  
      87.                     if(PhoneNumberUtils.isGlobalPhoneNumber(number)){  
      88.                         Intent intent = new Intent(Intent.ACTION_DIAL,Uri.parse("tel://"+ number));  
      89.                         startActivity(intent);  
      90.                     }  
      91.                 }  
      92. /* 
      93. //直接撥號(hào),需要CALL_PHONE權(quán)限 
      94.                 Intent intent=new Intent(Intent.ACTION_CALL); 
      95.                 Cursor c=(Cursor)adapter.getItem(position); 
      96.                 long phoneID=c.getLong(c.getColumnIndex(People.PRIMARY_PHONE_ID)); 
      97.                 intent.setData(ContentUris.withAppendedId(android.provider. 
      98.                                              Contacts.Phones.CONTENT_URI, phoneID)); 
      99.                 startActivity(intent); 
      100.                 */  
      101.   
      102.             }  
      103.         });  
      104.       //添加長(zhǎng)按點(diǎn)擊,彈出快顯菜單  
      105.         listView.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {  
      106.               
      107.             public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {  
      108.                 menu.setHeaderTitle("你想要...?").setHeaderIcon(R.drawable.icon);   
      109.                 menu.add(000"刪除").setIcon(R.drawable.icon);  
      110.                 menu.add(010"修改").setIcon(R.drawable.icon);     
      111.             }  
      112.         });  
      113.     }  
      114.   //長(zhǎng)按菜單響應(yīng)函數(shù)  
      115.     @Override  
      116.     public boolean onContextItemSelected(MenuItem item) {  
      117.         //setTitle("點(diǎn)擊了長(zhǎng)按菜單里面的第"+item.getItemId()+"個(gè)項(xiàng)目");   
      118.         openToast("你點(diǎn)擊了"+item.getTitle());  
      119.         return super.onContextItemSelected(item);  
      120.     }  
      121.     private void openToast(String str){  
      122.         Toast.makeText(this,str,Toast.LENGTH_SHORT).show();  
      123.     }  
      124. }  

      Xml代碼  收藏代碼
      1. <?xml version="1.0" encoding="utf-8"?>  
      2. <manifest xmlns:android="http://schemas./apk/res/android"  
      3.       package="com.wt.app"  
      4.       android:versionCode="1"  
      5.       android:versionName="1.0">  
      6.     <application android:icon="@drawable/icon" android:label="@string/app_name">  
      7.         <activity android:name=".App"  
      8.                   android:label="@string/app_name">  
      9.             <intent-filter>  
      10.                 <action android:name="android.intent.action.MAIN" />  
      11.                 <category android:name="android.intent.category.LAUNCHER" />  
      12.             </intent-filter>  
      13.             <!-- 點(diǎn)擊撥號(hào)時(shí),詢問(wèn)調(diào)用默認(rèn)的程序還是調(diào)用本程序撥號(hào) -->  
      14.            <intent-filter>   
      15.                <action android:name="android.Intent.Action.CALL_BUTTON" />  
      16.                <category android:name="android.Intent.Category.DEFAULT" />   
      17.            </intent-filter>   
      18.         </activity>  
      19.   
      20.     </application>  
      21.     <uses-permission android:name="android.permission.READ_CONTACTS" />  
      22.     <uses-permission android:name="android.permission.CALL_PHONE"/>  
      23.     <uses-sdk android:minSdkVersion="3" />  
      24.   
      25. </manifest>  

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多