Si vous faites le conteneur pour la zone rouge, une mise en page tels que LinearLayout
ou RelativeLayout
remplir l'écran, vous pouvez le faire cliquable par XML ou par programme et capturer des clics là-bas. Here est un exemple rapide de la façon de procéder.
Cela suppose que vous voulez simplement ignorer si la zone blanche est cliquée.
Mise à jour: Voici un exemple rapide. Cette petite application va définir la zone blanche en rouge si on clique dessus. Dans l'écouteur de clic, vous pouvez facilement faire ce que vous devez pour rejeter la zone rouge.
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<!--Set onClick and clickable here to capture clicks. -->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/backgroundLayout"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/white"
android:clickable="true"
android:onClick="layoutClicked"
tools:context="com.example.layout2.MainActivity">
<!--Set clickable here, too, to capture clicks so they don't propagate
to underlying view. The button is still enabled, though. -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="200dp"
android:background="@android:color/holo_blue_bright"
android:clickable="true">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</LinearLayout>
</LinearLayout>
Et le code de soutien:
MainActivity.java
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void layoutClicked(View view) {
// Set the background color of the "outside" area to red.
// This is where you would dismiss the red area.
view.setBackgroundColor(0xFFDD0000);
}
}
vous voulez afficher un popup lorsqu'un utilisateur clique ci-dessous zone rouge marquée. – Aditya
non, je veux savoir comment faire le rouge rejeter quand je clique sur la partie extérieure de rouge –