2013-10-14 3 views
0

Я пытаюсь создать кнопку, которая при нажатии изменит состояние, например, кнопку виртуального бункера, у которой есть начальное изображение бункера, а затем при нажатии на изображение меняется на корзину с открытой крышкой. Пока у меня есть селектор, связанный с отдельным xml в drawable с тремя состояниями, но когда он нажимает на него, он не остается в состоянии «в щелчке», он просто нажимает и выключает, мне нужно изменить его из ImageButton к пуговица или что-то, и изменение кнопки размера оленьей кожи, мне нужно, чтобы изменить меньший размер при нажатии на, я надеюсь, что это makese смысла, вот мой код, спасибо:ImageButton Назад к предыдущему .xml

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android" > 
     <item android:drawable="@drawable/sunday_pressed" 
      android:state_pressed="true" /> 
    <item android:drawable="@drawable/sunday_focused" 
      android:state_focused="true" /> 
    <item android:drawable="@drawable/sunday_default" /> 
</selector> 

XML-с кнопка:

<ImageButton 
    android:id="@+id/sun" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:layout_marginBottom="26dp" 
    android:layout_toLeftOf="@+id/mon" 
    android:background="@drawable/vpbuttons" 
    android:contentDescription="@string/sunday" 
    android:onClick="sendMessage" /> 

Java-:

 ImageButton imageButton = (ImageButton) findViewById(R.id.sun); 
     imageButton.setOnClickListener(new View.OnClickListener() { 
      public void onClick(View v) { 

      } 
     }); 

} 
} 

Могу ли я лучше создать интерактивную графику, а не кнопку? если это возможно?

ответ

0

Если вы хотите, чтобы кнопка «переключилась» в другое состояние между щелчками, вы захотите подкласса ToggleButton. Вы должны иметь возможность использовать ваш селектор просто отлично. Чтобы изменить размер кнопки при нажатии, вы можете сделать это в коде в методе onClick().

This question, упоминается увеличение размера при нажатии.

+0

Хорошо, верно спасибо, при изменении размера кнопки есть ли способ указать выравнивание? так что вместо изменения формы в центр он меняет форму и места в верхней части исходной кнопки? – ToeKnee

+0

Насколько сильно вы меняете размер своей кнопки? – Prmths

Смежные вопросы