Android AnalogClock: программный программный интерфейс

Я делаю приложение аналоговых часов, которое имеет около 15 дизайнов в одном приложении. Одним из способов настройки дизайна было бы создание разных widgetconfigs.XML для каждого проекта, но это загромождает устройства с 4.0+.

Я также подумал о создании активности, которая позволяет изменять дизайн, используя

 remoteviews.setInt(R.id.analogClock1, "setDialResource", R.drawable.clock1); 

Но это не позволит установить чертежи рук … Что еще я могу сделать?

Solutions Collecting From Web of "Android AnalogClock: программный программный интерфейс"

Вы действительно нарисовываете drawables один раз (когда начинается активность), конечно, есть некоторые анимации и многое другое, которые изменяют внешний вид активности, но не drawables, вы можете использовать drawable для разных объектов в активности, например, иметь один стиль для каждой кнопки, но вы не можете перерисовывать ,

У вас есть 2 способа сделать этот проект:

1. Использование XML

Вы можете сделать 15 различных действий, а по Intent вы можете переключаться между действиями

 public void method() { Intent i = new Intent(this , Destination.class); startActivity(i); } 

2. использование кодов

Все, что может быть спроектировано с использованием XML, также может быть записано через java-коды. Он требует больше строк, но может быть динамическим, это означает, что вам не нужно делать, если другое для каждого условия; Вы просто производите необходимые объекты каждый раз, когда это необходимо.

Примеры:

Xml

 <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/button_text" ... /> 

Или программно:

Button button = new Button(this); YourView.addview(button);