"......必须提供layout_height ......"但是我的风格资源呢?

Ran*_*ndy 20 android android-widget android-layout android-theme

我有一个2.1及以上的工作应用程序,直到我尝试用主题样式清理我的初始布局.现在,应用程序甚至不会以"您必须提供layout_height属性"失败消息开始,该消息指向布局中的第一个EditText视图.

为什么我不能将每个EditText上正常工作的'layout_height = 30dp'移动到... item name ="android:layout_height"> 30dp <...以我的主题引用的样式?

事实上,我抽象出来的所有其他风格效果都很好.

[我不会惊讶地发现,必须对LinearLayout进行一些样式覆盖,而不是EditText.或者它必须是View的样式项,而不是Widget.不知道]

想法?任何人?什么是被忽视的显而易见的事情?在此先感谢您的任何建议!

AndroidManifest.xml中:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
...
<application    android:label="xxx"
    android:icon="@drawable/xxx" >

<activity   android:name="DataEntry"
    android:label="xxx"
    android:theme="@style/xxx_theme.A" >
...
Run Code Online (Sandbox Code Playgroud)

xxx_theme.A.xml

<style name="xxx_theme" parent="@android:Theme" >
  <item name="android:windowNoTitle">true</item>
</style>

<style name="xxx_theme.A" >
  <item name="android:textViewStyle">@style/xxx_TextView_widget</item>
  <item name="android:editTextStyle">@style/xxx_EditText_widget</item>
  <item name="android:checkboxStyle">@style/xxx_CheckBox_widget</item>
  <item name="android:radioButtonStyle">@style/xxx_Radio_widget</item>
</style>

<style name="xxx_EditText_widget" parent="@android:style/Widget.EditText" >
  <item name="android:textSize">9dp</item>
  <item name="android:layout_height">30dp</item>
  <item name="android:paddingLeft">8dp</item>
  <item name="android:paddingTop">1dp</item>
  <item name="android:paddingBottom">1dp</item>
  <item name="android:textColorHint">@color/texthint</item>
  <item name="android:singleLine">true</item>
  <item name="android:selectAllOnFocus">true</item>
  <item name="android:inputType">textNoSuggestions</item>
</style>
...
Run Code Online (Sandbox Code Playgroud)

Jon*_*lis 8

你 的风格<item name="android:layout_height">30dp</item> 却没有android:layout_width.

你需要两者.