2017-05-04 3 views
1

Ich nehme den Bezug von https://github.com/prolificinteractive/material-calendarviewKann nicht onClick useing Material-Calendar von GitHub Projekt

stelle ich implementiert OnDateSelectedListener und @Override onDateSelected, aber es gibt keine Arbeits, wenn ich alle Tage auf dem Kalender clcik.

Warum?

Jeder kann mir den Punkt beibringen, was ich vermisse? Vielen Dank im Voraus

gradle Projekt:

compile 'com.prolificinteractive:material-calendarview:1.4.3' 

Layout-xml:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 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" 
    tools:context="com.example.user.testcalendar0420_1.MainActivity"> 

    <com.prolificinteractive.materialcalendarview.MaterialCalendarView 
     xmlns:app="http://schemas.android.com/apk/res-auto" 
     android:id="@+id/calendarView" 
     android:layout_width="368dp" 
     android:layout_height="wrap_content" 
     app:mcv_showOtherDates="all" 
     app:mcv_selectionColor="#00F" 
     tools:layout_editor_absoluteY="0dp" 
     tools:layout_editor_absoluteX="8dp" /> 

</LinearLayout> 

Mein Kalender Klasse:

public class MainActivity extends AppCompatActivity implements OnDateSelectedListener { 

    private MaterialCalendarView calendarView; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     //I can see the calendar on screen 
     calendarView = (MaterialCalendarView) findViewById(R.id.calendarView); 

     System.out.println("onCreate"); 

    } 

    @Override 
    public void onDateSelected(@NonNull MaterialCalendarView widget, @NonNull CalendarDay date, boolean selected) { 
     //selected is no value on logcat 
     Log.d("selected", "" + selected); 
     //It can't be show 
     Toast.makeText(this, "enterDateSelected" + date, Toast.LENGTH_SHORT).show(); 

     if (selected == true) { 
      //It can't be show 
      Toast.makeText(this, "onClick" + date, Toast.LENGTH_SHORT).show(); 
     } 
    } 

} 

Antwort

1

Sie sind nicht den Hörer auf die MaterialCalendarView Einstellung zu lösen Sie müssen dies nach der Initialisierung der Ansicht zu onCreate hinzufügen:

calendarView.setOnDateChangedListener(this); 
+0

Heilige ... wie kann ich den Code vermissen, Sie sparen mein Leben, danke. –

Verwandte Themen