2012-05-04 15 views
-1

私はリストのビューをcustomCursorAdapter、つまりCoordinatorTagのようなCoordinatorTag(CoordinatorTagなど)でコーディネータテーブルからバインドしていますが、これらのタグを追加したい最後にALLという名前のリスト内の余分な項目。どうすればこのことができますか教えてください。カーソルアダプタを使用したリストの項目の追加

おかげ オムParkash

答えて

0

チェックアウトを使用することを検討して、この.....

私は、この例では、あなたの

のために参考になっ願っています

今のListView

にカーソルアダプターを使用するためのクラスを作成/res/layout/row.xml

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:orientation="vertical"> 
<TextView 
android:id="@+id/listtitle" 
android:textSize="22px" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content"/> 
<TextView 
android:id="@+id/listpubdate" 
android:textSize="10px" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content"/> 
</LinearLayout> 

を作成します。

import java.io.IOException; 
import java.net.MalformedURLException; 
import java.net.URL; 
import java.util.List; 

import javax.xml.parsers.ParserConfigurationException; 
import javax.xml.parsers.SAXParser; 
import javax.xml.parsers.SAXParserFactory; 

import org.xml.sax.InputSource; 
import org.xml.sax.SAXException; 
import org.xml.sax.XMLReader; 

import android.app.ListActivity; 
import android.content.Context; 
import android.content.Intent; 
import android.os.Bundle; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.ArrayAdapter; 
import android.widget.ListView; 
import android.widget.TextView; 

public class AndroidRssReader extends ListActivity { 

private RSSFeed myRssFeed = null; 

public class MyCustomAdapter extends ArrayAdapter<RSSItem> { 

public MyCustomAdapter(Context context, int textViewResourceId, 
    List<RSSItem> list) { 
    super(context, textViewResourceId, list); 
} 

@Override 
public View getView(int position, View convertView, ViewGroup parent) { 
    // TODO Auto-generated method stub 
    //return super.getView(position, convertView, parent); 

    View row = convertView; 

    if(row==null){ 
    LayoutInflater inflater=getLayoutInflater(); 
    row=inflater.inflate(R.layout.row, parent, false); 
    } 

    TextView listTitle=(TextView)row.findViewById(R.id.listtitle); 
    listTitle.setText(myRssFeed.getList().get(position).getTitle()); 
    TextView listPubdate=(TextView)row.findViewById(R.id.listpubdate); 
    listPubdate.setText(myRssFeed.getList().get(position).getPubdate()); 

    if (position%2 == 0){ 
    listTitle.setBackgroundColor(0xff101010); 
    listPubdate.setBackgroundColor(0xff101010); 
    } 
    else{ 
    listTitle.setBackgroundColor(0xff080808); 
    listPubdate.setBackgroundColor(0xff080808); 
    } 

    return row; 
} 
} 

    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     try { 
    URL rssUrl = new URL("http://www.gov.hk/en/about/rss/govhkrss.data.xml"); 
    SAXParserFactory mySAXParserFactory = SAXParserFactory.newInstance(); 
    SAXParser mySAXParser = mySAXParserFactory.newSAXParser(); 
    XMLReader myXMLReader = mySAXParser.getXMLReader(); 
    RSSHandler myRSSHandler = new RSSHandler(); 
    myXMLReader.setContentHandler(myRSSHandler); 
    InputSource myInputSource = new InputSource(rssUrl.openStream()); 
    myXMLReader.parse(myInputSource); 

    myRssFeed = myRSSHandler.getFeed(); 

} catch (MalformedURLException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
} catch (ParserConfigurationException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
} catch (SAXException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
} catch (IOException e) { 
    // TODO Auto-generated catch block 
    e.printStackTrace(); 
} 

if (myRssFeed!=null) 
{ 
    TextView feedTitle = (TextView)findViewById(R.id.feedtitle); 
    TextView feedDescribtion = (TextView)findViewById(R.id.feeddescribtion); 
    TextView feedPubdate = (TextView)findViewById(R.id.feedpubdate); 
    TextView feedLink = (TextView)findViewById(R.id.feedlink); 
    feedTitle.setText(myRssFeed.getTitle()); 
    feedDescribtion.setText(myRssFeed.getDescription()); 
    feedPubdate.setText(myRssFeed.getPubdate()); 
    feedLink.setText(myRssFeed.getLink()); 

    MyCustomAdapter adapter = 
    new MyCustomAdapter(this, R.layout.row, myRssFeed.getList()); 
    setListAdapter(adapter); 

} 
    } 

@Override 
protected void onListItemClick(ListView l, View v, int position, long id) { 
// TODO Auto-generated method stub 
Intent intent = new Intent(this,ShowDetails.class); 
Bundle bundle = new Bundle(); 
bundle.putString("keyTitle", myRssFeed.getItem(position).getTitle()); 
bundle.putString("keyDescription", myRssFeed.getItem(position).getDescription()); 
bundle.putString("keyLink", myRssFeed.getItem(position).getLink()); 
bundle.putString("keyPubdate", myRssFeed.getItem(position).getPubdate()); 
intent.putExtras(bundle); 
     startActivity(intent); 
} 
} 
0

あなたはアイテムがリストの末尾にある場合、あなたはそれのためのフッタービューを使用することができますaddHeaderViewaddFooterView

0

を使用することができます。 addFooterView(View v, Object data, boolean isSelectable)を使用してください。 listViewのsetAdapter()を呼び出す前に必ずこれを呼び出してください。

0

はい、あなたはaddFooterViewを使用して簡単に行うことができます。

lv.addFooterView(bottom_layout, null, false); 

ここで、lvは追加するリストビューで、bottom_layoutは追加するビューまたはレイアウトです。

0

あなたがデータセットに項目を追加したい場合は、MatrixCursor及びその方法newRow()

関連する問題