728x90
AddView
layoutInflater 를 통해 layout을 그려주고
addview 함수를 통해 view를 추가해준다.
Inflater
- item을 해당 layout(xml)에 그리는 역할
Layout File
- item 하나가 그려질 view
Item list
- 리스트 목록
Item
- 리스트 목록의 하나
public class MainActivity extends AppCompatActivity {
ArrayList<String> arrayList;
LayoutInflater layoutInflater;
LinearLayout container;
Context context;
View view;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
context = this;
arrayList = new ArrayList();
arrayList.add("/// 1 ///");
arrayList.add("/// 2 ///");
container = findViewById(R.id.container); //메인 xml에
layoutInflater = LayoutInflater.from(this); //그리는 도구
for(int i = 0; i < arrayList.size(); i++)
{
//view에 아이템 그려준다.
view = layoutInflater.inflate(R.layout.layout_list_item,null,false);
TextView itemText = view.findViewById(R.id.item_textVIew);
itemText.setText(arrayList.get(i) );
container.addView(view);//메인에 view 를 추가
}
layoutInflater = LayoutInflater.from(this); //그리는 도구
view = layoutInflater.inflate(R.layout.layout_list_image,null,false);
ImageView imageView = view.findViewById(R.id.imageVIew);
imageView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(),"이미지 클릭",Toast.LENGTH_LONG).show();
}
});
container.addView((view));
}
}
'Front-end > Android (안드로이드 앱 개발)' 카테고리의 다른 글
Android studio (안드로이드 스튜디오) 전화번호부 만들기 2 (객체화), 3 (Glide) (0) | 2020.03.03 |
---|---|
Android studio (안드로이드 스튜디오) Layout에 View 동적 생성(추가)으로 전화번호부 만들기 1 (0) | 2020.03.02 |
Android studio (안드로이드 스튜디오) Library 라이브러리 추가하기 ex) Glide 글라이드 (0) | 2020.02.29 |
Android studio (안드로이드 스튜디오) 플래그먼트 생성 2, create Fragment (0) | 2020.02.25 |
Android studio(안드로이드 스튜디오) Fragment 플래그먼트와 버튼 적용 (0) | 2020.02.24 |
댓글