본문 바로가기

Daily Sample

[Day15] Android XmlPullParser AndroDay App만들기2 소스

TITLE : Android XML XmlPullParser App 2

Date : 2010/07/27

Writen by Dayyoung

Description :

This is Source that make the App show RSS feed information by XmlPullParser. (Inplemented by tabView)

Download Link :  

Reference Site:

http://www.androidside.com/bbs/board.php?bo_table=B46&wr_id=11818

지난 시간에 설명한 CustomListView를 사용해 실제적으로 XML데이터를 가져오는 APP을 만들어 보았다.

오늘은 두번째 시간으로 TabWidget을 이용해 멀티ListView를 구현했다.

1. TabWiget을 하단으로 내리기 위해 Main.xml 을 다음과 같이 Tabhost layout으로 작성하며,

MainActivity는 TabActivity를 상속받는다.

TabWidget을 내려서 배치하고, Framelayout에 1의 가중치를 부여하면 TabWiget이 내려간다.

 


아이폰 UI 스타일로 구현된 것인데, 실제로 TabWidget을 다양하게 변경할 수 없어서,

실무에 쓰고싶다면 천상 이미지로 수작업을 해줘야 할것이다.

사용자 정의 tabwidget 에 대한 정보 :  http://www.gregbugaj.com/?p=6

(소스가 공개되있지만, 사용할 수 없는 상태다.)
 

 

2. Tab을 클릭할 때 Intent로 ListActivity를 가져오게 구현하였다.

특히, 3번 탭은 addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP))옵션을 설정하여,

클릭할 때마다 새로고침을 하게된다.

 

3. 공지사항과 Daily강좌는 Tag정보로 구분하여 Androday.com의 XML정보를 불러왔고,

세번째 탭의 경우 구글 뉴스-안드로이드 RSS Feed 정보를 redirection하였다.

구글 안드로이드 뉴스 RSS 링크 :

http://news.google.com/news?hl=ko&q=%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C&um=1&ie=UTF-8&output=rss

 

 4.  저번 시간과 다르게 각 Activity는 Listactivity를 상속 받으므로,

onListItemClick() 함수를 재정의 하게 된다.

본 App에서는 Intent를 통해 웹뷰에 링크를 호출하게 한다.
 @Override
 protected void onListItemClick(ListView l, View v, int position, long id) {
  // TODO Auto-generated method stub

  IconTextItem Item = (IconTextItem) adapter.getItem(position);
  String[] data = Item.getData();

  Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(data[1]));
  startActivity(intent);
 }

 

5. 저번 시간에 적용했던 아이콘을 라운드처리해서 좀더 App 아이콘처럼 만들어 주었다. (끗~)

 

Creative Commons License
이 저작물은 크리에이티브 커먼즈 저작자표시 3.0 Unported 라이선스에 따라 이용할 수 있습니다