2012-03-07 3 views
0

사용자 지정 listview를 만들고 ListActivity를 확장하여 정상적으로 작동합니다. 하지만 Activity를 확장하는 주요 활동에 ListView를 추가하려고합니다. 어떻게해야합니까?사용자 지정 목록보기 사용

예를 들어 ListActivity를 확장하는 하나의 ListView로 채워진 화면이 아니라 내 화면의 일부에 사용자 지정 ListView를 넣을 수 있습니다.

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent">  
<TextView 
    android:id="@+id/lvresult" 
    android:paddingTop="2dip" 
    android:paddingBottom="3dip" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" /> 
    </LinearLayout> 

이이 MyListActivity입니다 :

package Dic.proj.pkg; 
import java.util.ArrayList; 
import android.app.ListActivity; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.ArrayAdapter; 
import android.widget.EditText; 
import android.widget.ListView; 
import android.widget.TextView; 
import android.widget.Toast; 
public class MyListActivity extends ListActivity { 
EditText et; 
TextView tv; 
TextView tvresult; 
String resulttext; 
ArrayList<String> mArrayList = new ArrayList<String>(); 
public void onCreate(Bundle icicle) { 
    super.onCreate(icicle); 
    String[] values = new String[] { "Android", "iPhone", "WindowsMobile", 
      "Blackberry", "WebOS", "Ubuntu", "Windows7", "Max OS X", 
      "Linux", "OS/2" }; 
    // Use your own layout 
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, 
      R.layout.customlist, R.id.lvresult, values); 
    setListAdapter(adapter); 
} 

@Override 
protected void onListItemClick(ListView l, View v, int position, long id) { 
    String item = (String) getListAdapter().getItem(position); 
    Toast.makeText(this, item + " selected", Toast.LENGTH_LONG).show(); 
    } 
} 

이 잘 작동하지만 화면에 하나의 목록보기를 볼 수 있습니다. 내 기본 활동에이 사용자 정의 목록보기를 넣고 싶습니다. 어떻게해야합니까?

+0

당신은 구글나요? [Android의 맞춤 목록보기 예] (http://www.google.co.in/#hl=ko&safe=active&sclient=psy-ab&q=custom+listview+example+in+android&oq=custom+list&aq=1&aqi=g4&aql=&gs_sm = 3 = gs_upl 182417l185071l1l186944l15l10l2l3l4l1l183l1619l0.10l15l0 및 gs_l = hp.3.1.0l4.182417l185071l1l186944l15l10l2l3l4l1l183l1619l0j10l15l0 및 PBX = 1 BAV = on.2, or.r_gc.r_pw.r_qf., cf.osb 및 FP = bb4200f2eeeb84b9 및 BIW = 1280 & BIH = 677 및 안전 = ON) –

답변

1

당신은 아래와 같이 수행 -

public class StoreListActivity extends Activity { 
    private List<Store> mStores; 
    private StoreAdapter mStoreAdapter; 
    private ListView mListView; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.store_list); 
     mListView = (ListView) findViewById(R.id.store_listview); 

      mStores = getTheStoresFromSomewhere(); 
     mStoreAdapter = new StoreAdapter(this, mStores); 
     mListView.setAdapter(mStoreAdapter); 
    } 
0
// roadmapscreen.xml 
<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:background="#ffffff" 
    android:layout_height="fill_parent" 
    > 

    <ListView 

     android:cacheColorHint="#00000000" 
android:id="@+id/roadmaplist" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:listSelector="@android:color/transparent" 
android:divider="@null"/> 

</RelativeLayout> 

//roadmap_list_item 
<?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="wrap_content" 
    android:background="#ffffff" 



    > 

     <TextView 
      android:id="@+id/text" 
     android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
     android:text="Hello" 
     android:textColor="#000000" 
     android:layout_marginTop="12dp" 
     android:layout_marginLeft="12dp" 
     android:textStyle="bold" 
     /> 

    </RelativeLayout> 

//Main Activity 
public class RoadmapActivity extends Activity { 
ListView lv; 
ArrayList<String> catList; 
@Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     requestWindowFeature(Window.FEATURE_NO_TITLE); 
     setContentView(R.layout.roadmapscreen); 
catList=new ArrayList<String>(); 

     catList.add("Work"); 
     catList.add("Time"); 
     catList.add("Money"); 
     catList.add("Health"); 
     catList.add("Fun & Recreation"); 
     catList.add("Friends & Relatives");    
     catList.add("Spirituality & Growth"); 
     catList.add("Home & Housework"); 
     catList.add("Death & Dying"); 
     catList.add("Sexual Intimacy"); 
     catList.add("Marriage/Commitment"); 
     catList.add("Children"); 
     catList.add("Miscellaneous"); 

lv=(ListView)findViewById(R.id.roadmaplist); 
     lv.setAdapter(new CustomAdapter()); 
} 
public class CustomAdapter extends BaseAdapter 
{ 

    public int getCount() { 
     // TODO Auto-generated method stub 
     return catList.size(); 
    } 

    public Object getItem(int position) { 
     // TODO Auto-generated method stub 
     return position; 
    } 

    public long getItemId(int position) { 
     // TODO Auto-generated method stub 
     return position; 
    } 

    public View getView(final int position, View convertView, ViewGroup parent) { 
     // TODO Auto-generated method stub 
     final ViewHolder holder; 
     LayoutInflater inflater=(LayoutInflater)getSystemService(LAYOUT_INFLATER_SERVICE); 
     if (convertView == null) 
     { 
      convertView=inflater.inflate(R.layout.roadmap_list_item, null); 
      holder = new ViewHolder(); 


     } 
     else   
     { 
      holder = (ViewHolder) convertView.getTag(); 
     } 
     holder.txt1=(TextView)convertView.findViewById(R.id.text); 
     convertView.setTag(holder); 
     holder.txt1.setText(catList.get(position)); 
     convertView.setOnClickListener(new OnClickListener() { 

      public void onClick(View v) { 
       // TODO Auto-generated method stub 

      } 
     }); 

     return convertView; 
    } 
    class ViewHolder { 

     TextView txt1; 

    } 

} 
} 
관련 문제