0

オンラインXMLファイルからXMLを解析し、リストビューに表示するアプリケーションがあります。その後、ユーザーはアイテムをクリックして全文を表示できます。これはすべて正常に機能しますが、ユーザーが特定の記事を保存して、後日またはオフラインで読むことができるようにしたいと思います。これはかなり単純だと思いますが、正しい方向に導くものを見つけるのに苦労しています。以下は、単一のニュース記事を表示するアクティビティです。

public class SingleActivity  extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.single_list_item);

        // getting intent data
        Intent in = getIntent();

        // Get XML values from previous intent
        String title = in.getStringExtra("name");
        String date = in.getStringExtra("date");
        String content = in.getStringExtra("content");

        // Displaying all values on the screen
        TextView lblName = (TextView) findViewById(R.id.name_label);
        TextView lblDate = (TextView) findViewById(R.id.date_label);
        TextView lblCont = (TextView) findViewById(R.id.content_label);

        lblName.setText(title);
        lblDate.setText(date);
        lblCont.setText(Html.fromHtml(content));
    }   
}
4

2 に答える 2

2

SQLiteデータベースを利用できます。ユーザーに保存するオプションを提供します。ボタンや画像ボタンなど、イベントを発生させるものなら何でも使用できます。イベントが発生したら、データベースに保存するだけです。DBに問題がある場合は、ここで例を入手してください。変更したコードは次のようになります。

 public class SingleActivity  extends Activity {

@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.single_list_item);

        // getting intent data
        Intent in = getIntent();

        // Get XML values from previous intent
        String title = in.getStringExtra("name");
        String date = in.getStringExtra("date");
        String content = in.getStringExtra("content");

        // Displaying all values on the screen
        TextView lblName = (TextView) findViewById(R.id.name_label);
        TextView lblDate = (TextView) findViewById(R.id.date_label);
        TextView lblCont = (TextView) findViewById(R.id.content_label);

        lblName.setText(title);
        lblDate.setText(date);
        lblCont.setText(Html.fromHtml(content));

        Button b = (Button)  findViewById(R.id.savebutton);
        b.setonclicklistsener() {
             saveToDB(lblName's text, lblDate's text, lblCont's text);
        }


    }

     public void saveToDB(lblName's text, lblDate's text, lblCont's text){

           // do database stuff here    

     }

}
于 2012-10-30T09:23:14.027 に答える
0

この特定のケースではsqliteを使用できますhttp://www.codeproject.com/Articles/119293/Using-SQLite-Database-with-Android

于 2012-10-30T09:19:42.413 に答える