2011-11-21 3 views
2

목록보기의 코드와 같은 것입니다 :이 listView에 대한 ImageAdapter 구현 방법 코드?

public final static String ITEM_TITLE = "title"; 
    public final static String ITEM_CAPTION = "caption"; 
    public Resources resources; 
    public static Uri path; 
    public static File file; 
    public static ProgressDialog m_progressDialog; 
    public static ListView list; 

    @Override 
    public void onCreate(Bundle icicle) { 
     super.onCreate(icicle); 
     setContentView(R.layout.main); 

     // create our list and custom adapter 
     SeparatedListAdapter adapter = new SeparatedListAdapter(this); 
     adapter.addSection("Local documents:", new ArrayAdapter<String>(this, 
      R.layout.list_item, new String[] { "WindowsONE Mobile PK", "WindowsorONE Moldings","Filet for a burger video" })); 
     adapter.addSection("Non-local resources:", new ArrayAdapter<String>(this, 
       R.layout.list_item, new String[] { "Launch Photo slideshow link", "Dealer locator link" })); 
     adapter.addSection("Send emails:", new ArrayAdapter<String>(this, 
       R.layout.list_item, new String[] { "Send Dealer Locator email", "Send Catalog email","Send install instrucation link" })); 
     //For extra Information in Listview  
     //adapter.addSection("Non-local resources:", new SimpleAdapter(this, security, R.layout.list_complex, 
     //new String[] { ITEM_TITLE, ITEM_CAPTION }, new int[] { R.id.list_complex_title, R.id.list_complex_caption }));   
     list = getListView(); 
     list.setAdapter(adapter); 
     list.setTextFilterEnabled(true); 
     list.setOnItemClickListener(this); 
    } 

} 
+0

당신이 원하는 의미 이미지로 ListView를 구현하려면? –

+0

아니요, 이미지 없음. 그러나 나는이 목록보기에 ImageAdapter를 설정하려고한다. 왜냐하면 내 코드에서 목록보기를 선택하는 동안 목록 항목이 선택되었음을 표시하지 않기 때문이다. 그 perticular 색인의 배경에 오렌지 색을 선택 표시되지 않습니다 .. –

+0

당신이 대답을 가지고 있다면, 올바른 하나를 허용 표시하십시오 – MorningGlory

답변

1
public class ListContacts extends ListActivity { 

ListAdapter lAdapter; 

@Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 


Cursor cursor = getContentResolver().query(
       ContactsContract.Contacts.CONTENT_URI, null, 
       ContactsContract.Contacts.HAS_PHONE_NUMBER + " = 1", null, 
       "UPPER(" + ContactsContract.Contacts.DISPLAY_NAME + ") ASC"); 

     startManagingCursor(cursor); 


/** start mapping */ 
     String[] columns = new String[] { ContactsContract.Contacts.DISPLAY_NAME }; 
     int[] names = new int[] { R.id.contact_name }; 
     lAdapter = new ImageCursorAdapter(this, R.layout.contact_listview, 
       cursor, columns, names); 
     setListAdapter(lAdapter); 


} 





public class ImageCursorAdapter extends SimpleCursorAdapter 

{ 

public ImageCursorAdapter(Context context, int layout, Cursor c, 
      String[] from, int[] to) { 
     super(context, layout, c, from, to); 

} 

* @param pos 
    *   : the position in the list/cursor, 
    * @param inView 
    *   : The View object of the row that was last created, null if 
    *   its the first row 
    * @param parent 
    *   : The ViewGroup object of the parent view return View : 
    *   returns a View object when called 
    * @see android.widget.CursorAdapter#getView(int, android.view.View, 
    *  android.view.ViewGroup) 
    */ 
    public View getView(int pos, View inView, ViewGroup parent) { 

View v = inView; 

} 

} 
+0

이 예제는 무엇을 할 계획입니까? –

1

내가 그런 다음 선택한 목록의 항목을 강조 할 필요는 사용

android:listSelector="@drawable/selector_list" 



<ListView android:id="@id/android:list" android:background="@android:color/transparent" 
      android:cacheColorHint="@android:color/transparent" 
      android:layout_width="fill_parent" android:layout_height="fill_parent" 
      android:listSelector="@drawable/selector_list" 
android:layout_weight="1" 
      android:layout_marginLeft="10dp" android:layout_marginRight="10dp" 
      android:drawSelectorOnTop="false"> 

selector_list.xml

<selector xmlns:android="http://schemas.android.com/apk/res/android" 
      android:constantSize="true"> 

    <item android:state_focused="false" android:state_pressed="false"> 

    <shape android:shape="rectangle"> 
    <solid android:color="@android:color/transparent"/> 
      <stroke android:width="2dp" android:color="@android:color/transparent" /> 
    <padding android:left="1dp" android:top="1dp" android:right="1dp" 
     android:bottom="1dp" /> 
    </shape> 
    </item> 

    <item android:state_focused="true" android:state_pressed="false"> 

    <shape android:shape="rectangle"> 
      <solid android:color="@color/listitemfocus"/> 
    <stroke android:width="4dp" android:color="@android:color/transparent" /> 
    <padding android:left="1dp" android:top="1dp" android:right="1dp" 
     android:bottom="1dp" /> 
    </shape> 
    </item> 

    <item android:state_pressed="true"> 

    <shape android:shape="rectangle"> 
      <solid android:color="@color/listitempress"/> 
    <stroke android:width="4dp" android:color="@android:color/transparent" /> 
    <padding android:left="1dp" android:top="1dp" android:right="1dp" 
     android:bottom="1dp" /> 
    </shape> 
    </item> 

</selector> 
+0

모든 종류의 어댑터에서 작동합니까? –

+0

예 iDroid Explorer – jennifer

+0

당신이 말한대로 레이아웃을 설정했습니다. 그러나 어떤 ListView 인덱스를 선택하려고하는 동안 여전히 어떤 색상도 보지 못했습니다. –