Я использую пользовательские styles
и я делаю хорошо, но теперь я запутался о том, как использовать совершенно другую styles
для виджетов, таких как CompoundButtons
, Spinners
, ImageButton
с, и т.д .. Я имеют обычай Buttons
для каждого типа, и каждый имеет свой собственный drawable
в зависимости от его состояния. То, что я выяснил, но мне нужно два совершенно разных Themes
(например, используйте food_orange ImageButton
, когда состояние нажато, и используйте meal_blue для ImageButton
состояния, нажатого для моего другого Theme
) в зависимости от того, из какого из двух клиентов приложение предназначено. Я искал эту проблему, так что либо это невозможно без двух отдельных приложений, либо я не ищу правильные условия или полностью понимаю themes
(возможно, оба).Создайте две отдельные темы в приложении
Небольшой пример того, что я в настоящее время находится в моем styles.xml
// these point to separate selector files to show the different states
<style name="MealButton" parent="@android:style/Widget.ImageButton">
<item name="android:background">@drawable/meal_button</item>
</style>
<style name="CatButton" parent="@android:style/Widget.ImageButton">
<item name="android:background">@drawable/cat_button</item>
</style>
Я первоначально создал обычай theme
с чем-то вроде
<style name="CustomActivityTheme" parent="@android:style/Theme.Holo.Light">
<item name="android:actionBarStyle">@style/MyActionBar</item>
</style>
ActionBar
часть не имеет никакого значения, потому что я создал собственный бар но если бы я мог это сделать, и внутри здесь диктовать использовать приведенные выше примеры стилей ImageButton
, тогда это было бы здорово.
Надеюсь, я объяснил это правильно. Может ли кто-нибудь сказать мне, возможно ли это. Я не могу себе представить, что мне нужны две отдельные версии приложения, но, может быть. Я думал, что могу объявить эти styles
внутри разных themes
, но я, похоже, не смог это сделать для widgets
.
Просто, чтобы уточнить, вопрос в том, как я могу использовать этот первый фрагмент кода во втором фрагменте и сделать это для двух отдельных тем? Благодаря!
Я действительно смущен. Вы хотите иметь разные стили для своих кнопок в зависимости от их состояния? Это ваша конечная цель? – Catherine
У меня уже есть два разных значка для них, но два набора. Каждая кнопка «Button» имеет значок для нажатия и один для обычного. Но у меня есть два набора этих ... скажем, один комплект для компании A и один комплект для компании B. Я хочу, чтобы он использовал кнопки набора 1, если он был загружен компанией A, и установил два, если они были загружены компанией B. Надеюсь, что имеет смысл – codeMagic
За исключением отправки их отдельных APK, я не уверен, что вы можете это сделать - см. http://stackoverflow.com/questions/3246447/how-to-set-the-style-attribute-programmatically-in- android – Catherine