я создал ImageView
и я хочу сделать два действия на него:Настройка событий на изображение Вид
Первое: когда я нажимаю на ImageView
это chnages его фона, чтобы сделать это, я создал Drawable Resource File
имени imgpressed.xml
и добавлен атрибут android:background="imgpressed
в ImageView Layout
во-вторых: Если я нажимаю на него (Действие UP), Toast
должен появиться на экране, чтобы сделать это, я создал метод SetOnClickListener
в Java кодекса , но заметил, что, когда я добавить атрибут андроид: clickable в imageView, OnClickListener в код Java не работает, и если я удалить атрибут OnClickListener в работах Java Code ....
что мои коды:
imageView
Планировка:
<ImageView
android:clickable="true"
android:background="@drawable/imgpressed"
android:layout_width="100dp"
android:layout_height="100dp"
android:id="@+id/imageView"
android:contentDescription="@string/pauseimgS"
android:focusableInTouchMode="false"
android:background="@drawable/pauseimg"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true"
/>
imgpressed.xml:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="false">
<bitmap android:src="@drawable/pauseimg"/>
</item>
<item android:state_pressed="true">
<bitmap android:src="@drawable/pauseimgclicked"/>
</item>
</selector>
код Java Main Activity
public class game extends AppCompatActivity {
RelativeLayout Rel_main_game;
View pauseButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.game);
LayoutInflater myInflater = (LayoutInflater) getApplicationContext().getSystemService(getApplicationContext().LAYOUT_INFLATER_SERVICE);
pauseButton = myInflater.inflate(R.layout.pause, null, false);
Rel_main_game = (RelativeLayout) findViewById(R.id.relativeLayout);
Rel_main_game.addView(pauseButton);
pauseButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(game.this,"Thank You", Toast.LENGTH_SHORT).show();
}
});
}
}
Какой вопрос? –
Я не могу изменить фон и показать Тост за одно и то же время ... только одно событие запущено –