CalendarView可点击机器人 [英] CalendarView Clickable Android
本文介绍了CalendarView可点击机器人的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想开始一个新的活动,当你点击CalendarView一个日期,但我的事件似乎并没有开火。我已经设置点击为真,并指定一个onclick(无论是在XML)
这是XML:
< RelativeLayout的的xmlns:机器人=http://schemas.android.com/apk/res/android
的xmlns:工具=http://schemas.android.com/tools
机器人:layout_width =match_parent
机器人:layout_height =match_parent>
< CalendarView
机器人:ID =@ + ID / calendarView1
机器人:layout_width =match_parent
机器人:layout_height =match_parent
机器人:layout_alignParentLeft =真
机器人:layout_alignParentTop =真
机器人:可点击=真
机器人:的onClick =CalendarClick/>
< / RelativeLayout的>
这是我的code日历活动:
公共类CalendarActivity扩展活动
{
@覆盖
公共无效的onCreate(包savedInstanceState)
{
super.onCreate(savedInstanceState);
的setContentView(R.layout.activity_calendar);
}
@覆盖
公共布尔onCreateOptionsMenu(菜单菜单)
{
。getMenuInflater()膨胀(R.menu.activity_calendar,菜单);
返回true;
}
公共无效CalendarClick(查看视图)
{
意图myIntent =新的意图(CalendarActivity.this,MainActivity.class);
CalendarActivity.this.startActivity(myIntent);
}
}
解决方案
这工作得很好......
进口android.app.Activity;
进口android.os.Bundle;
进口android.view.View;
进口android.widget.CalendarView;
进口android.widget.CalendarView.OnDateChangeListener;
进口android.widget.Toast;
公共类NewAct延伸活动{
@覆盖
保护无效的onCreate(包savedInstanceState){
super.onCreate(savedInstanceState);
的setContentView(R.layout.newact);
CalendarView calendarView =(CalendarView)findViewById(R.id.calendarView1);
calendarView.setOnDateChangeListener(新OnDateChangeListener(){
@覆盖
公共无效onSelectedDayChange(CalendarView来看,INT年,月整型,
INT DAYOFMONTH){
Toast.makeText(getApplicationContext(),+ DAYOFMONTH,0).show(); // TODO自动生成方法存根
}
});
}
这是XML
< XML版本=1.0编码=UTF-8&GT?;
< RelativeLayout的的xmlns:机器人=http://schemas.android.com/apk/res/android
的xmlns:工具=http://schemas.android.com/tools
机器人:layout_width =match_parent
机器人:layout_height =match_parent>
< CalendarView
机器人:ID =@ + ID / calendarView1
机器人:layout_width =match_parent
机器人:layout_height =match_parent
机器人:layout_alignParentLeft =真
机器人:layout_alignParentTop =真
/>
< / RelativeLayout的>
I am trying to start a new activity when you click on a date in CalendarView but my event doesn't seem to fire. I have set clickable to true and specified an onclick (both in xml)
this is the xml:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<CalendarView
android:id="@+id/calendarView1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:clickable="true"
android:onClick="CalendarClick" />
</RelativeLayout>
this is my code for the calendar activity:
public class CalendarActivity extends Activity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_calendar);
}
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
getMenuInflater().inflate(R.menu.activity_calendar, menu);
return true;
}
public void CalendarClick(View view)
{
Intent myIntent = new Intent(CalendarActivity.this, MainActivity.class);
CalendarActivity.this.startActivity(myIntent);
}
}
解决方案
This works fine.....
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.CalendarView;
import android.widget.CalendarView.OnDateChangeListener;
import android.widget.Toast;
public class NewAct extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.newact);
CalendarView calendarView=(CalendarView) findViewById(R.id.calendarView1);
calendarView.setOnDateChangeListener(new OnDateChangeListener() {
@Override
public void onSelectedDayChange(CalendarView view, int year, int month,
int dayOfMonth) {
Toast.makeText(getApplicationContext(), ""+dayOfMonth, 0).show();// TODO Auto-generated method stub
}
});
}
And this is xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<CalendarView
android:id="@+id/calendarView1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
/>
</RelativeLayout>
这篇关于CalendarView可点击机器人的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文