Ich habe eine sehr einfache Anwendung, und ich versuche, ein Kontrollkästchen in der Symbolleiste zu setzen. DieseBenutzerdefinierte Schaltflächen in der ToolBar reagieren nicht auf Aktionen. Toast wird nicht angezeigt
ist, wie mein xml aussieht:
<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
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:fitsSystemWindows="true"
tools:context="xxxxxxxx.xx.xx.HomeActivity">
<android.support.design.widget.AppBarLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
android:padding="5dp"
app:popupTheme="@style/AppTheme.PopupOverlay">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal">
<EditText
android:id="@+id/searchET"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="8"
android:background="@android:color/white"/>
<CheckBox
android:id="@+id/favorite_toggle"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="2"
/>
</LinearLayout>
</android.support.v7.widget.Toolbar>
</android.support.design.widget.AppBarLayout>
<include layout="@layout/content_home" />
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
android:layout_margin="@dimen/fab_margin"
android:src="@android:drawable/ic_dialog_email" />
</android.support.design.widget.CoordinatorLayout>
In meinem MainActivity ich einen einfachen Hörer festgelegt haben:
favoriteBtn = (CheckBox) findViewById(R.id.favorite_toggle);
favoriteBtn.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton compoundButton, boolean isChecked) {
if(isChecked){
Toast.makeText(HomeActivity.this, "changed", Toast.LENGTH_SHORT);
addFavorite(url);
}else{
Toast.makeText(HomeActivity.this, "again changed", Toast.LENGTH_SHORT);
removeFavorite(url);
}
}
});
Wenn ich das Kontrollkästchen klicken, passiert nichts, ich die Checkbox schaltet aber nicht den Toast sehen. Ich sehe folgende Meldungen in logcat
D/ViewRootImpl: ViewPostImeInputStage processPointer 1
Kann mir jemand Richtung auf das, was falsch sein könnte?
Update: Ich denke, es ist nur die Toasts nicht angezeigt.
ew .. ja ich war so sehr davon überzeugt, dass etwas nicht stimmte. Das habe ich verpasst. –