2014-08-29 45 views
0

我目前正在嘗試在我的TableLayout/TableRow中以編程方式設置分隔線,因爲我在旅途中製作了UI。我使用的代碼如下:以編程方式設置分隔線

... 
    tablelayout.setDividerDrawable(getResources().getDrawable(android.R.attr.dividerHorizontal)); 
    tablelayout.setDividerPadding(4); 
    ... 

我試圖複製下面的代碼:

<...> 
    ... 
    android:showDividers="middle" 
    android:divider="?android:dividerVertical" 
    android:dividerPadding="8dp" 
    ...> 
</...> 

這是我的日誌:

08-29 01:49:09.880: W/ResourceType(1714): Requesting resource 0x101030a failed because it is complex 
08-29 01:49:09.885: W/System.err(1714): android.content.res.Resources$NotFoundException: Resource ID #0x101030a 
08-29 01:49:09.900: W/System.err(1714):  at android.content.res.Resources.getValue(Resources.java:1025) 
08-29 01:49:09.900: W/System.err(1714):  at android.content.res.Resources.getDrawable(Resources.java:670) 
08-29 01:49:09.900: W/System.err(1714):  at com.tabcards.android.Search.createUI(Search.java:178) 
08-29 01:49:09.900: W/System.err(1714):  at com.tabcards.android.Search.access$2(Search.java:142) 
08-29 01:49:09.900: W/System.err(1714):  at com.tabcards.android.Search$1$1.run(Search.java:128) 
08-29 01:49:09.900: W/System.err(1714):  at android.os.Handler.handleCallback(Handler.java:725) 
08-29 01:49:09.900: W/System.err(1714):  at android.os.Handler.dispatchMessage(Handler.java:92) 
08-29 01:49:09.900: W/System.err(1714):  at android.os.Looper.loop(Looper.java:158) 
08-29 01:49:09.905: W/System.err(1714):  at android.app.ActivityThread.main(ActivityThread.java:5751) 
08-29 01:49:09.905: W/System.err(1714):  at java.lang.reflect.Method.invokeNative(Native Method) 
08-29 01:49:09.905: W/System.err(1714):  at java.lang.reflect.Method.invoke(Method.java:511) 
08-29 01:49:09.905: W/System.err(1714):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1083) 
08-29 01:49:09.905: W/System.err(1714):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:850) 
08-29 01:49:09.905: W/System.err(1714):  at dalvik.system.NativeStart.main(Native Method) 

編輯: 我已經看過在源代碼attr.xml,我發現了以下行:

... 
<attr name="dividerVertical" format="reference"/> 
... 

有什麼想法?

+0

我注意到,您正在使用attr.xml中的名稱** dividerVertical **和您要複製的代碼,但在代碼示例中使用** dividerHorizo​​ntal **。你確定你試圖獲得正確的資源? – 2014-08-29 01:12:27

+0

@NathanNorman是的,我也注意到了......我很傻。無論如何,我解決了我的問題。 – gedr 2014-08-29 02:13:06

+0

什麼最終解決了問題? – 2014-08-29 14:42:48

回答

0

如果使用Eclipse,請刪除r.java文件。它將自動重新制作。然後去項目 - >清潔。然後再試一次。

+0

不,沒有做任何事情。 – gedr 2014-08-29 01:03:00