2011-12-30 53 views
0

我有奇怪的問題,很奇怪。在XML我三星總是返回null,但它適用於HTC - findViewbyId

<Button 
     android:id="@+id/btnV" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="right|center_vertical" 
     android:layout_marginRight="10dp" 
     android:background="@drawable/selector_app_update"> 
    </Button> 

和代碼

btnV = (Button) findViewById(R.id.btnV); 

和HTC它的工作原理,但在三星,我每次都讓空。有沒有人有類似的問題?我清理並重新啓動項目和日食,但沒有。

+0

不,它在我的三星Galaxy Y工作正常 – 2011-12-30 11:39:52

+0

lolz ... howz有可能嗎? – 2011-12-30 11:41:38

+1

只需刷新項目或重新啓動eclipse即可。 – 2011-12-30 11:42:22

回答

2

問題可能是您的自定義背景可繪製。

這些設備是否具有不同的屏幕尺寸或DPI? 您是否在drawable-ldpi和drawable-hdpi中有不同的drawable,但不在標準的drawable文件夾中?

+0

Android將使用最合適的drawable,如果正確的drawable不可用,所以我不太明白爲什麼這個答案被接受。 – 2012-01-04 12:30:14

+0

http://developer.android.com/guide/practices/screens_support.html提及: 但是,如果唯一可用資源大於當前屏幕,系統將不會使用它們,並且如果沒有其他資源,您的應用程序將崩潰匹配設備配置(例如,如果所有佈局資源都使用xlarge限定符進行標記,但該設備是正常大小的屏幕)。有關係統如何選擇資源的更多信息,請閱讀Android如何查找最佳匹配資源。 – KarlKarlsom 2012-01-04 14:04:02

1

這聽起來很奇怪,通常我會要求您清理該項目,甚至可能重新啓動Eclipse,但從外觀上看,您已經嘗試過了。

如何重命名您的Button視圖的ID?你嘗試過嗎?

你可以在初始化佈局時顯示代碼的一部分嗎?Button