我想制作触摸屏以实现另一种布局 我已经制作了onTouchListener
这是我的代码:
package com.example.final_project;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.widget.RelativeLayout;
public class MainActivity extends Activity implements OnTouchListener{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
View view = getLayoutInflater().inflate(R.layout.activity_main, null);
setContentView(view);
view.setOnTouchListener(this);
}
@Override
public boolean onTouch(View to_main, MotionEvent event) {
// TODO Auto-generated method stub
Intent i = new Intent(MainActivity.this, sort.class);
startActivity(i);
return false;
}
}
即使我尝试创建另一个touch.class仍然关闭
package com.example.final_project;
import android.content.Context;
import android.graphics.Canvas;
import android.widget.RelativeLayout;
public class touch extends RelativeLayout {
public touch(Context context) {
super(context);
// TODO Auto-generated constructor stub
}
@Override
protected void onDraw(Canvas canvas) {
if (getX() != 0 && getY() != 0) {
canvas.translate(getX(), getY());
}
super.onDraw(canvas);
}
}
这是sort.class代码
package com.example.final_project;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class sort extends Activity {
Button toMessage;
Button toBoard;
Button toMain;
Intent iMain = getIntent();
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
toMessage = (Button)findViewById(R.id.tomessage);
toBoard = (Button)findViewById(R.id.toboard);
toMain = (Button)findViewById(R.id.tomain);
toMessage.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i = new Intent(sort.this , choose.class);
startActivity(i);
}
});
toBoard.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i2 = new Intent(sort.this , board.class);
startActivity(i2);
}
});
toMain.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent i3 = new Intent(sort.this , MainActivity.class);
startActivity(i3);
}
});
}
}
“我想制作触摸屏以实现另一种布局”,这就像游戏中的一些 开始视图有“触摸此处开始”和LogCat显示“MainActivity [line:23] - onTouch(View,MotionEvent)”
答案 0 :(得分:0)
您没有为排序活动设置setContentView,请在活动文件中添加以下代码。
setContentView(yourview);