Activity가 아닌 ListActivity를 상속받아 ListView 처리하기.

 

; ListActivity 를 사용할때는 아이디가 list인 리스트뷰가 반드시 존재해야 한다!

 

 

 

(1) activity_main.xml

ListActivity 를 사용할때는 아이디가 list인 리스트뷰가 반드시 존재해야 한다!
@android:id ==> 안드로이드에서 이미 만들어 놓은 아이디 사용

 

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity" >  

    <ListView android:id="@android:id/list" 
       android:layout_width="match_parent"
       android:layout_height="match_parent">
   </ListView>
</RelativeLayout>

 

 

(2) MainActivity.java

package com.example.test11_listview;

import java.util.ArrayList;

import android.os.Bundle;
import android.app.Activity;
import android.app.ListActivity;
import android.view.Menu;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;

 

public class MainActivity extends ListActivity {
    ArrayList<String> arr=new ArrayList<String>();
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        arr.add("딸기");
        arr.add("포도");
        arr.add("오렌지");
        arr.add("복숭아");
       
        //리스트뷰와 연결될 어댑터뷰 만들기
        ArrayAdapter<String> adapter=new ArrayAdapter<String>(this,
                android.R.layout.simple_list_item_1,arr);
        //리스트뷰에 어댑터 연결하기
        setListAdapter(adapter);
    }

     //리스트의 항목을 클릭하면 자동호출(이벤트리스너를 등록하지 않아도 자동호출!)
    @Override
    protected void onListItemClick(ListView l, View v, int position, long id) {
        //선택한 항목값 얻어오기
        String item=arr.get(position);
        Toast.makeText(this,"선택항목:" + item,Toast.LENGTH_SHORT).show();
    }

 

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.activity_main, menu);
        return true;
    }   
}

+ Recent posts