xml 하나로 여러개의 view 를 만들기
하나의 xml 로 여러개의 view 만들기
아래의 코드처럼 하나의 xml 을 가지고 여러번 inflate 해서 사용할 수 있다. 그런 경우에 그 안에 있는 id 는 inflatedView(v1).findViewById() 를 통해 사용할 수 있다.
좀 더 자세하고, 친절한 설명은 ref. 1 을 보면 알 수 있다.
//--------------------------------------------------------
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
SlidingView sv = new SlidingView(this);
View v1 = View.inflate(this, R.layout.listactivity, null);
View v2 = View.inflate(this, R.layout.listactivity, null);
sv.addView(v1);
sv.addView(v2);
setContentView(sv);
/**
* Start to load the data
*/
listView = (ListView) v1.findViewById(R.id.listview);
LoadData load1 = new LoadData(listView);
listView = (ListView) v2.findViewById(R.id.listview);
LoadData load2 = new LoadData(listView);
load1.execute("");
load2.execute("");
}
public class SlidingView extends ViewGroup {
listactivity.xml
<?xml version="1.0" encoding="utf-8"?>
<!-- layout for listview -->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ListView
android:id="@+id/listview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
</LinearLayout>
References
http://androblip.huiges.nl/2010/05/14/add-a-view-to-a-wrapper-multiple-times-with-inflate/
댓글 없음:
댓글 쓰기