2012-05-29 29 views
0

開發測驗應用程序,用選項顯示問題。使用webview加載快速數據?

問題在數據庫中HTML格式。使用WebView我正在顯示一個Q & A.

當我使用TextView時,Q & A顯示自己整齊。但是當我使用WebView顯示Q & A時,顯示該問題需要很長時間,並且同時顯示選項的選項爲

我的代碼:

static ArrayList<ArrayList<String>> stringList; 
static ArrayList<String> optionlist; 

webView = (WebView) findViewById(R.id.question); 
webView.getSettings().setJavaScriptEnabled(true); 

webView.loadData(listItem.getquestion(), "text/html", "UTF-8"); 
webView.getSettings().setDefaultFontSize(14); 
webView.getSettings().setRenderPriority(RenderPriority.HIGH); 
webView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE); 

RadioGroup radiogroup = (RadioGroup) findViewById(R.id.radiogroup); 

LinearLayout.LayoutParams layoutParams = new RadioGroup.LayoutParams(
     RadioGroup.LayoutParams.WRAP_CONTENT, 
     RadioGroup.LayoutParams.WRAP_CONTENT); 

for (int i = 0; i < stringList.size(); i++) { 
    optionlist = new ArrayList<String>(); 
    optionlist = stringList.get(i); 

    RadioButton newRadioButton = new RadioButton(this.getContext()); 

    newRadioButton.setText(optionlist.get(2)); 
    newRadioButton.setTextColor(Color.parseColor("#000000")); 

    radiogroup.addView(newRadioButton, layoutParams); 
} 
+1

可以顯示代碼 –

回答

0

我沒有看到你添加任何東西到的WebView(一次或多次),但這裏有一些指點,讓你包括運行速度更快的代碼:

  • 使用for-each循環,它們更快,更容易。
  • 刪除新的ArrayList的聲明,因爲在接下來的行,你只需用現有的ArrayList

篩選覆蓋它:

for (ArrayList<String> currentList : stringList) { 
    RadioButton newRadioButton = new RadioButton(this.getContext()); 
    newRadioButton.setText(currentList.get(2)); 
    newRadioButton.setTextColor(Color.parseColor("#000000")); 

    radiogroup.addView(newRadioButton, layoutParams); 
}