2015-01-18 4 views
1

ListActivity에서 ListView를 채우는 많은 예제를 보았습니다. 동적으로 채워진 ListView가 필요하지만 작업 표시 줄이있는 활동에는 표시해야합니다.ActionBarActivity에서 ListView를 동적으로 채울 수 있습니까?

그래서 대신 (예에서 내가 본대로) :

public class EditHolidaysActivity extends ActionBarActivity { 

그러나 setListAdapter 방법을 확인할 수 없습니다 :

public class EditHolidaysActivity extends ListActivity { 

나는 있습니다. ListView를 채우기 위해 어떤 방법을 사용할 수 있습니까? 다음은 XML과 자바의 조각은 다음과 같습니다

... 
    <CheckBox 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="@string/Anni" 
     android:id="@+id/chkbxAnniversary" 
     android:checked="false" 
     android:onClick="saveAnniPref"/> 

    <ListView 
     android:id="@android:id/list" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:text="@string/hello" /> 

</LinearLayout> 

자바 :

public class EditHolidaysActivity extends ActionBarActivity { 
    public static final String PREFS_NAME = MainActivity.PREFS_NAME; 
    private final static String TEXT_DATA_KEY = "textData"; 
    private CommentsDataSource datasource; 


    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_edit_holidays); 

     datasource = new CommentsDataSource(this); 
     datasource.open(); 

     List<Comment> values = datasource.getAllComments(); 

     // use the SimpleCursorAdapter to show the 
     // elements in a ListView 
     ArrayAdapter<Comment> adapter = new ArrayAdapter<Comment>(this, 
       android.R.layout.simple_list_item_1, values); 
     setListAdapter(adapter); 
    } 

감사합니다! 이 같은

+1

'myListView = (ListView를) findByViewId (R.id.lstName)', 다음 전화'myListView.setAdapter (어댑터) '? – Leigh

+0

시도해보십시오 ... –

+0

수정 사항; 'myListView = (ListView) findViewById (R.id.lstName)'사용 - 내 대답은 아래 참조하십시오. – Leigh

답변

2

뭔가 : 왜 ListView에 myListView` 사용 '의 인스턴스를 만들 수 없습니다

public class EditHolidaysActivity extends ActionBarActivity { 
public static final String PREFS_NAME = MainActivity.PREFS_NAME; 
private final static String TEXT_DATA_KEY = "textData"; 
private CommentsDataSource datasource; 
private ListView lstView; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_edit_holidays); 

    lstView = (ListView)findViewById(R.id.list); 

    datasource = new CommentsDataSource(this); 
    datasource.open(); 

    List<Comment> values = datasource.getAllComments(); 

    // use the SimpleCursorAdapter to show the 
    // elements in a ListView 
    ArrayAdapter<Comment> adapter = new ArrayAdapter<Comment>(this, 
      android.R.layout.simple_list_item_1, values); 
    lstView.setAdapter(adapter); 
} 
+0

감사합니다. 작동하는 것 같습니다. –

관련 문제