存储长文本,Android

时间:2016-05-21 03:23:55

标签: android textview

我正在构建一个应用程序,一旦点击,ExpandableListView中的项目应该显示要读取的可滚动文本,提供某些信息。在这种情况下,最好的方法是什么?是否建立活动,使用TextView并在其中插入文本?字符串最好存储在数据库中并动态加载,还是有另一种方法?比你!

1 个答案:

答案 0 :(得分:2)

我认为使用textView显示数据是可以的。但总是要确保在单独的线程中加载文本并使用处理程序将其提供给textview。

TextView tv=(TextView)findViewById(R.id.textView);
tv.setHInt("Loading");

//creating hanlder
final Handler hanlder=new Hanlder(){
   @Overrride
   public void handleMessage(Message msg){
       String text=msg.getData().getString("loadedText");
       tv.setText(text);
   }
};

//new thread to load data
new Thread(new Runnable{
    @Overrride
    public void run(){
        //load content from database
        // prepare a Message object with a Bundle containing the loaded text
        Message msg=new Message();
        Bundle bundle=new Bundle();
        bundle.putString("loadedText",loadedTextFromDb);
        msg.setData(bundle);

        //notify the hanlder
        handler.dispatchMessage(msg);
    }
}).start();

使用像这样的处理程序并不是一个好习惯。坚持使用静态处理程序。