마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

SimpleCursorAdapter의 text1, text2무엇인지 궁금합니다.

0 추천
    adapt = new SimpleCursorAdapter(
    this,
    android.R.layout.simple_list_item_2,
    c,
    new String[] {"name","age"},
    new int[] {android.R.id.text1,android.R.id.text2}
    );
    setListAdapter(adapt);
    if (db != null) {
        db.close();
    }
    break;

 

위 소스의 text1, text2가 무엇을 역활하는지 알고 싶습니다.
책에서는 name, age 필드를 각각 text1, text2에 연결했다고 하는데 자세히 알고 싶습니다.
Amar (600 포인트) 님이 2014년 8월 18일 질문

3개의 답변

0 추천
 
채택된 답변

simlpe_list_item_2 Layout에는 TextView가 두개있습니다.

그 TextView의 id가 text1,text2라는것이죠. text1은 text2보다 글자크기가 더 클겁니다.

책에서 name과 age를 연결했다고하는것은  text1에는 name을 넣고 text2에는 age를 표시한다는 내용이고요

 

그러니까 TextView 두개를 사용해야하잖아요? name과 age를 표시하려면...

그래서 android.R.simlpe_list_item_2 라는 안드로이드에서 제공하는 Layout을 가져다 쓴겁니다.

res폴더에 Layout을 그냥 만들어서 사용하면  (TextView)findViewById(R.id.text1) 이렇게 TextView를 사용하면되고

Layout을 만들기 싫다. 기본적으로 제공하는거 쓰자 하면 위의 방식대로 사용하는것이고요.

그럴경우 (TextView)findViewById(android.R.id.text1) 이런식으로 사용해야되는것이고요. 

그래서 name과 age를 TextView에 쓰고싶은데 그러려면 id를 알아야하죠?

그게 저 android.R.id.text1, android.R.id.text2 라고 보면됩니다.

 
q1212 (26,020 포인트) 님이 2014년 8월 18일 답변
Amar님이 2014년 8월 19일 채택됨
답변 감사합니다~ 많은 도움이 되었습니다!
+1 추천

안드로이드 SDK 디렉토리에서 simple_list_item_2.xml 레이아웃 파일을 열어보면 알 수 있습니다.

익명사용자 님이 2014년 8월 18일 답변
아직 개발 초보라 무엇인지 간단하게 설명해주실수 있을까요?
0 추천

android.R.id.text1, android.R.xxx는 안드로이드 프레임워크에서 식별자 역할을 합니다.

 

별건 아니고, 기본으로 아무것도 없는 TextView입니다 android.R.text1, text2는요

 

android.R.id.text1을 쓰는 android.R.layout.simple_list_item_2에서 가져왔습니다.

 

<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/text1"
android:layout_width="fill_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:textAppearance="?android:attr/textAppearanceLarge"
android:gravity="center_vertical"
android:paddingLeft="5dip"
android:singleLine="true"  
/>

 

ontwikkelaar (2,260 포인트) 님이 2014년 8월 18일 답변
...