2011-11-24 71 views
0

首先,我有一個tabview有多個活動,其中三個是listviews。我的ListView不滾動 - 我不使用滾動視圖

我創造了第一個 - 設備和工作的一種享受。然後我通過在eclipse中剪切/粘貼文件並重命名這些文件並調用新文件來創建其餘部分。

問題 - 設備已停止滾動。

我甚至減少了它的組成部分,並用簡單的options1-5去除了預填充列表,但它仍然拒絕向上或向下移動。 在其他窗口中,即使列表未完全填充,也可以抓取窗口,並且內容將向上/向下滾動,釋放時會彈出到屏幕頂部的正常視圖。

我一行一行的比較,併爲我的生活弄不清楚爲什麼這不起作用。下面

代碼:

public class harpcsEquipment extends Activity { 

    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView (R.layout.tab_harp_equipment); 
     // Got the entire Equipment list and now we populate the Listview 

     String[] listitems = {"Option 1","Option 2","Option 3","Option 4","Option 5"}; 
     ListView lv = (ListView) findViewById(R.id.list); 
     lv.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, listitems)); 
    //@Override 
    protected void onResume() 
    { 
     super.onResume(); 
     // NOW WE ADD DATA TO THE TEMPLATE 
     //populateXMLCharacter(); 
    } 
} 

tab_harp_equipment.xml

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent"> 
<ListView android:id="@+id/list" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:layout_weight="1" /> 
</LinearLayout> 

列表視圖被稱爲equiplist但改變的默認名稱沒有什麼區別...

任何幫助將是很大的不勝感激! 問候 傑森

我有很多的代碼(這和克隆類和克隆工作,但父母不...),我可以複製粘貼整個很多,但由於唯一的區別是數據正在粘貼和我顯示的字段數(因此在arrayadapter中調用不同的佈局文件),但由於上面的基本演示代碼不起作用,所以我在虧本...

+0

當你說默認名稱是你說的:「android:id =」@ android:id/list「」 –

+0

嘗試添加更多的項目在你的字符串數組上,選項1 ..... option22例如 – Houcine

+0

不是所有設備都允許一個不需要滾動的列表(足夠的空間來適應所有的設備)。您是否像以前一樣使用相同的設備(和Android版本)?有些設備不會執行您所描述的反彈效果。 – FunkTheMonk

回答

0

好的,在這裏取得更好的成功之後測試。

我在主屏幕上有兩個圖標(如果有幫助,請考慮谷歌加圖標屏幕)。 兩個圖標分別打開一個tabhost - 有8個選項卡,並將它們全部放在一個選項卡上只是混亂。

第一個tabhost上的所有選項卡都起作用。 Listviews在其中滾動。

第二個選項卡上的所有列表視圖都不起作用。 複製文本:

intentE = new Intent().setClass (this, harpcsEquipment.class); 
specE = tabHostE.newTabSpec("Equipment").setIndicator("Equipment", 
res.getDrawable(R.drawable.shield)).setContent(intentE); 
tabHostE.addTab(specE); 

從一個tabActivity到下一個工作正常 - 在設備列表視圖中打開和滾動。

所以問題是tabActivity。

有誰知道爲什麼第二個tabactivity不會讓listview在它裏面滾動嗎?

+0

好的。失敗我的一部分。選項卡xml文件與tabhost具有相同的ID。提出爲什麼它失敗了。希望這有助於未來的其他人! –

0

行,已解決。

TabActivity有一個缺陷/未記錄的功能/等。 它不會允許您在程序中獲得完整的功能,形成第二個TabActivity。因此在調用java程序時,當我使用intent來調用創建tabhost的程序時,我只需放入Extra(「tab」,「1」)或putExtra(「tab」,「2」)。

在程序內部,我只需獲取Extra和if選項卡== 1,然後使用一組Tabhosts intent加載tabhost,然後使用另一組tabhosts intent加載它。

該死的計謀...... Whoda thunk吧? 希望這有助於未來的其他人。