2011-07-28 48 views
17

我已经定义了样式线性布局但布局是不可见在main.xml为什么是不可能的线性布局具有样式属性


main.xml中的图形视图。

<LinearLayout style="VerticalThemeLayoutInputs"> 

styles.xml

<resources> 
<style name="VerticalThemeLayoutInputs"> 
    <item name="android:background">#6699FF</item> 
    <item name="android:layout_width">fill_parent</item> 
    <item name="android:layout_height">fill_parent</item> 

</style> 
</resources> 

编辑:

但是,下面的代码将正常工作,但我不希望这个代码

<LinearLayout 
android:background="#6699FF" 
android:orientation="horizontal" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
> 

有趣的事实

我用了scrollview。在那里我放置了许多线性布局。布局属性几乎相同,所以我决定为此设置一个样式。但是发生了什么事?该布局仅在图形视图中不可见,但在仿真器中可正常工作。

但实际上发生了什么?我认为它是由于滚动视图。

+0

已经在你的代码中使用了它...?如果是的话..怎么...? – ngesh

+0

@ntc是你需要完整的main.xml吗? – vnshetty

+0

我觉得你需要在布局上调用setWillNotDraw(false)来让它自己绘制 –

回答

20

我想你想要的是style="@style/VerticalThemeLayoutInputs"

E.g.

<LinearLayout 
    style="@style/VerticalThemeLayoutInputs"> 
+1

@ Steve Prentice没有用处 – vnshetty

+0

如果这样做不起作用,则需要发布更多布局。 –

+0

@vnshetty,感谢您更新问题。我将你的布局和风格插入到一个项目中,如果你在这个答案中做了什么,它会正常工作。 –

0
<item name="android:layout_marginTop">@dimen/margin_top</item> 

删除此标记,并检查..这似乎是一个无效..并main.xml中添加style="@style/VerticalThemeLayoutInputs"就像史蒂夫·

+0

我删除,但没有使用 – vnshetty

+0

请参阅我的编辑 – vnshetty

+0

不告诉我你不知道..人们通常如何做..使用风格是另一种方式,当你有多个视图相同的属性..和你自己的代码一切工作正常.. – ngesh

3

的main.xml res中给出了上述答案/布局/:在res /值

<?xml version="1.0" encoding="UTF-8"?> 
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    style="@style/VerticalThemeLayoutInputs" 
> 
</LinearLayout> 

styles.xml /:

<?xml version="1.0" encoding="UTF-8"?> 
<resources> 
<style name="VerticalThemeLayoutInputs"> 
    <item name="android:background">#6699FF</item> 
    <item name="android:layout_width">fill_parent</item> 
    <item name="android:layout_height">fill_parent</item> 
    <item name="android:orientation">horizontal</item> 
    <item name="android:gravity">center_vertical</item> 
</style> 
</resources> 

在活动onCreate方法:

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    ... 
0

确定从位于不Ar中值文件夹中的style.xml/EN/.. 因为他所谓的第一“值\ style.xml默认“

相关问题