我做了一个非常简单的复合视图:
<LinearLayout>
<ImageView />
<EditText />
</LinearLayout>
一切正常,直到我决定在我的项目中设置编辑文本的样式:主题:
<style name="Theme.MyProject" parent="Theme.Sherlock.Light.DarkActionBar">
<item name="actionBarStyle">@style/Widget.Theme.MyProject.ActionBar</item>
<item name="android:actionBarStyle" tools:ignore="NewApi">@style/Widget.Playout.ActionBar</item>
<item name="android:buttonStyle">@style/Theme.Theme.MyProject.Button</item>
<item name="android:editTextStyle">@style/Theme.Theme.MyProject.EditText</item>
</style>
和
<style name="Theme.Playout.EditText">
<item name="android:textSize">15sp</item>
<item name="android:textColor">@color/field_text</item>
<item name="android:background">@color/field</item>
<item name="android:minHeight">50dp</item>
<item name="android:padding">5dp</item>
<item name="android:gravity">center</item>
<item name="android:fontFamily">sans-serif-light</item>
</style>
现在我的EditText非常漂亮,但没有获得焦点,因此无法输入文字(非常有用)。它可以很好地从布局直接向Compound视图添加值,但我想从一个舒适的主题中做到这一点。
提前致谢!
答案 0 :(得分:1)
试试这个:
<style name="Theme.Playout.EditText">
<item name="android:textSize">15sp</item>
<item name="android:textColor">@color/field_text</item>
<item name="android:background">@color/field</item>
<item name="android:minHeight">50dp</item>
<item name="android:padding">5dp</item>
<item name="android:gravity">center</item>
<item name="android:fontFamily">sans-serif-light</item>
<!-- I added these attributes: -->
<item name="android:focusable">true</item>
<item name="android:focusableInTouchMode">true</item>
<item name="android:clickable">true</item>
</style>