2013-04-08 51 views
3

我創建了一個簡單的ListView示例,當我滾動時,視圖全部出現亂碼。它保留項目的第一頁,並簡單地將其他項目顯示在最上面。它在兩個不同的設備和模擬器上執行相同的操作。Android ListView亂碼視圖

這裏是我的佈局:

<ListView xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/listview" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" /> 

這裏是我的活動:

public class ListViewExampleActivity extends Activity 
{ 
protected void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    this.setContentView(layout.list_ex_view1); 
    String[] values = new String[]{"Android", "iPhone", "WindowsMobile", "Blackberry", "WebOS", "Ubuntu", "Windows7", "Max OS X", "Linux", "OS/2", "Ubuntu", "Windows7", "Max OS X", "Linux", "OS/2", "Ubuntu", "Windows7", "Max OS X", "Linux", "OS/2", "Android", "iPhone", "WindowsMobile"}; 
    ListView listview = (ListView) this.findViewById(R.id.listview); 
    listview.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, values)); 
} 

}

你可以看到它看起來像在這裏:

http://i.imgur.com/KYzILGd.png

+0

我也試圖與相同的結果ListActivity – Sammy 2013-04-08 00:35:17

+0

你有沒有試過這種在實際設備上?它可能是你的模擬器。它似乎不僅僅是一個代碼問題,而是一個渲染問題。 – thomas88wp 2013-04-08 02:53:14

+0

是的,我已經嘗試了兩個物理設備,一個運行3.2.1,另一個運行4.0.4,結果相同 – Sammy 2013-04-08 03:14:20

回答

0

我發現了這個問題。我有一個共同的主題,我分配給清單中的所有應用程序與android:theme =「@ style/myTheme」。看來問題是將@null分配給android:windowBackground屬性。

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
<style name="myTheme"> 
    <item name="android:windowBackground">@null</item> 
    <item name="android:windowNoTitle">true</item> 
    <item name="android:windowFullscreen">true</item> 
    <item name="android:windowContentOverlay">@null</item> 
    <item name="android:windowActionBar">false</item> 
</style>