在我的MainActivity里面有一个按钮button1,我想通过点击button1跳转到系统自带的闹钟界面,就是那个设置闹钟时间的页面。能跟我说一下OnTouchListener里面怎么写吗?还有mainifest要加一句什么。谢谢!!
我用的Eclipse+SDK+ADT的环境安卓eclipseadt界面sdk

解决方案 »

  1.   

    button一般不用OnTouchListener,而是用OnClickListener,代码如下:
    button.setOnClickListener(new OnClickListener() {

    @Override
    public void onClick(View v) {
    Intent alarmas = new Intent(AlarmClock.ACTION_SET_ALARM);
    startActivity(alarmas);
    }
    });Manifest里需要这个权限:
        <uses-permission android:name="com.android.alarm.permission.SET_ALARM"/>
      

  2.   

    谢谢啊!我这个包名字是:com.example.ischedule
    我的按钮实际上是ImageButton,然后把你的代码稍稍做了点修改:
    ImageView button4= (ImageView)findViewById(R.id.button4);

    button4.setOnTouchListener(new OnTouchListener() {
         
        @Override
        public boolean onTouch(View v, MotionEvent event) {
            Intent alarmas = new Intent(MainActivity.ACTION_SET_ALARM);
            startActivity(alarmas);
    return false;
        }
    });在manifest里面的权限是这样的:
     <uses-permission android:name="com.example.ischedule.permission.SET_ALARM"/>我的按钮定义是肯定没有错的,layout文件也对,但是运行的时候一点这个按钮就会停止运行。是哪里需要再设置一下吗?
      

  3.   

    你应该看一下logcat的错误信息就知道哪里错了
    ------------------------------------------------------AutoCSDN签名档------------------------------------------------------
      

  4.   

    代码帮你改好了,直接拿过去用吧。
            final ImageView button4 = (ImageView) findViewById(R.id.button4);        button4.setOnTouchListener(new OnTouchListener() {            @Override
                public boolean onTouch(View v, MotionEvent event) {
                    //先判断当前触摸的是不是button4,再判断是否是ACTION_DOWN,都满足条件才跳转到闹钟界面
                    if (v == button4 && event.getAction() == MotionEvent.ACTION_DOWN) {
                        Intent alarmas = new Intent(AlarmClock.ACTION_SET_ALARM);// 这行你写错了的,应该是AlarmClock.ACTION_SET_ALARM
                        startActivity(alarmas);
                        return true;// 你已经处理过的事件就要return true
                    }
                    return false;
                }
            });这个权限是系统定义的,你不可以改动,一定要像下面这样写:
    <uses-permission android:name="com.android.alarm.permission.SET_ALARM"/>
      

  5.   

    啊,谢谢啊!对对,我心急了,好多都写错了!最近刚学android,多谢指导