-MainActivity - 지금 저의 MainActivity 입니다. 에뮬을 실행하면
첨부한 사진 처럼 나옵니다. 여기에다가 20개에 한번씩 에뮬화면 아래에 더보기 버튼 을 추가하려면
어떻게 소스를 추가해야되나요?? 자세한 답변 부탁드립니다.
package com.example.c09_listicontext;
import java.util.ArrayList;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.Window;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.ListView;
import android.widget.TextView;
public class MainActivity extends Activity {
ArrayList<MyItem> arItem;
View convertView = null;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);// 타이틀바
setContentView(R.layout.main);
arItem = new ArrayList<MyItem>();
MyItem mi;
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북1");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북2");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북3");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북4");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북5");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북6");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북7");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북8");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북9");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북10");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북11");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북12");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북13");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북14");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북15");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북16");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북17");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북18");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북19");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북20");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북21");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북22");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북23");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북24");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북25");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북26");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북27");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북28");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북29");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북30");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북31");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북32");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북33");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북34");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북35");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북36");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북37");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북38");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북39");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북40");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북41");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북42");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북43");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북44");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북45");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북46");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북47");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북48");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북49");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북50");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북51");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북52");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북53");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북54");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북55");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북56");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북57");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북58");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북59");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북60");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북61");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북62");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북63");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북64");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북65");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북66");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북67");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북68");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북69");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북70");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북71");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북72");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북73");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북74");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북75");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북76");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북77");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북78");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북79");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북80");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북81");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북82");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북83");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북84");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북85");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북86");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북87");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북88");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북89");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북90");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북91");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북92");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북93");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북94");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북95");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북96");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북97");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북98");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북99");arItem.add(mi);
mi = new MyItem(R.drawable.ic_launcher, "삼성 노트북100");arItem.add(mi);
MyListAdapter MyAdapter = new MyListAdapter(this,
R.layout.activity_main, arItem);
ListView MyList;
MyList=(ListView)findViewById(R.id.list);
MyList.setAdapter(MyAdapter);
MyList.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
// TODO Auto-generated method stub
Intent intent = new Intent(MainActivity.this, Next.class);
startActivity(intent);
}
}
);
}
}
//리스트 뷰에 출력할 항목
class MyItem{
MyItem(int aIcon, String aName){
Icon = aIcon;
Name = aName;
}
int Icon;
String Name;
}
//어댑터 클래스
class MyListAdapter extends BaseAdapter{
Context maincon;
LayoutInflater Inflater;
ArrayList<MyItem> arSrc;
int layout;
public MyListAdapter(Context context, int alayout, ArrayList<MyItem> aarSrc){
maincon = context;
Inflater = (LayoutInflater)context.getSystemService(
Context.LAYOUT_INFLATER_SERVICE);
arSrc = aarSrc;
layout = alayout;
}
public int getCount(){
return arSrc.size();
}
public String getItem(int position){
return arSrc.get(position).Name;
}
public long getItemId(int position){
return position;
}
//각 항목의 뷰 생성
public View getView(int position, View convertView, ViewGroup parent){
final int pos = position;
if(convertView == null){
convertView = Inflater.inflate(layout,parent,false);
}
ImageView img1 = (ImageView)convertView.findViewById(R.id.img1);
ImageView img2 = (ImageView)convertView.findViewById(R.id.img2);
if(position%2 == 0){
img1.setVisibility(View.VISIBLE);
img1.setImageResource(arSrc.get(position).Icon);
img2.setVisibility(View.INVISIBLE);
}
else {
img2.setVisibility(View.VISIBLE);
img2.setImageResource(arSrc.get(position).Icon);
img1.setVisibility(View.INVISIBLE);
}
TextView tv1 = (TextView)convertView.findViewById(R.id.text1);
TextView tv2 = (TextView)convertView.findViewById(R.id.text2);
TextView tv3 = (TextView)convertView.findViewById(R.id.text3);
tv1.setText(arSrc.get(position).Name);
tv2.setText(Integer.toString(position));
tv3.setText("선택하세요");
return convertView;
}
}
소스가 정리가 안되어서 보기가 힘든데 리스트뷰에 addFooterView에 더보기버튼을 추가해주고
(addFooterView에 넣을 xml도 하나 만들어줘야 합니다.)
그리고 더보기 버튼을 클릭할 때마다 리스트에서 20개씩 읽어오도록 해주세요.
20개는 대강 상수로 지정해주면 될테고 리스트크기보다 크지 않을때까지 계속 20개씩 불러오도록 하면 됩니다.