본문 바로가기

플밍 is 뭔들/안드로이드_인강

05-3. 어댑터 뷰

※ ListActivity
- ListView를 포함하는 액티비티(화면)로 ListView를 생성하지 않고 Data와 Adapter만 있으면 리스트로 구현이 가능하다.
  즉 layout을 만들지 않아도 리스트액티비티가 자동으로 생성이 된다는 말이다.

public class MainActivity extends ListActivity {

       ArrayList<String> data = null;
       ArrayAdapter<String> adapter = null;
       @Override
       protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);

              //리스트 액티비티를 상속받으므로 contentView 를 세팅해줄 필요가없다. 자동으로 화면생성
              //setContentView(R.layout.activity_main);

              data = new ArrayList<String>();
              data.add("월");
              data.add("화");
              data.add("수");
              data.add("목");
              data.add("금");
              data.add("토");
              data.add("일");

              adapter = new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1, data);

              setListAdapter(adapter);
       }


}


※ Spinner
 - ListView와 비슷하지만 처음부터 항목을 보여주지 않고, 위젯을 선택하면 항목을 보여 준다.


MainActivity
public class MainActivity extends ActionBarActivity {

       ArrayAdapter<CharSequence> adapter = null;
       Spinner spinner = null;

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

              setContentView(R.layout.activity_main);

              //Spinner를 만듬 xml파일에서 값을 받아옴
              adapter = ArrayAdapter.createFromResource(MainActivity.this, R.array.travelArea, android.R.layout.simple_spinner_item);
              //클릭을 했을 때 드롭다운될 리스트를 만듬
              adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
              
              //액티비티의 스피너의 아이디
              spinner = (Spinner)findViewById(R.id.sp_01);
              //제목, strings.xml에 세팅해둔다.
              spinner.setPrompt(getString(R.string.travelSelect));
              spinner.setAdapter(adapter);
       }


}


activity_main.xml
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    tools:context="com.example.androidex2.MainActivity" >
      

   <TextView

        android:layout_width="match_parent"
        android:layout_height="match_parent"
        //promt값이 세팅된다.
        android:text="@string/travelSelect"
        />
     
   <Spinner

       android:id="@+id/sp_01"
       android:layout_width="match_parent"
       android:layout_height="match_parent"
       android:prompt="@string/travelSelect"
       />

</TableLayout>


travelArea.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string-array name ="travelArea">
        <item>가나</item>
        <item>뉴질랜드</item>
        <item>독일</item>
        <item>미국</item>
        <item>일본</item>
        <item>영국</item>
        <item>프랑스</item>
        <item>중국</item>
        <item>한국</item>
        <item>호주</item>
    </string-array>

</resources>

strings.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>

    <string name="app_name">AndroidEx2</string>
    <string name="hello_world">Hello world!</string>
    <string name="action_settings">Settings</string>
    <string name="travelSelect">여행지 선택</string>

</resources>


'플밍 is 뭔들 > 안드로이드_인강' 카테고리의 다른 글

06-1. 이벤트 & 리스너  (0) 2016.11.27
05-4. 어댑터 뷰  (0) 2016.11.27
05-2. 어댑터 뷰  (0) 2016.11.27
05-1. 어댑터 뷰  (0) 2016.11.27
04. 커스텀 뷰  (0) 2016.11.27