Android 如何使用按钮侦听器在另一个中调用activity.java
我有两个完全独立运行的类活动(ArduinoBlinkLEDActivity.java和ObjTrackActivity.java)。。我想在一个slas中合并这两个类;我想使用onclick活动按钮Listener调用第一个类中的第二个类。我认为这需要改变布局 求你了,我需要你的帮助 ArduinoBlinkLEDActivity.java:Android 如何使用按钮侦听器在另一个中调用activity.java,android,layout,android-activity,onclicklistener,Android,Layout,Android Activity,Onclicklistener,我有两个完全独立运行的类活动(ArduinoBlinkLEDActivity.java和ObjTrackActivity.java)。。我想在一个slas中合并这两个类;我想使用onclick活动按钮Listener调用第一个类中的第二个类。我认为这需要改变布局 求你了,我需要你的帮助 ArduinoBlinkLEDActivity.java: public class ArduinoBlinkLEDActivity extends Activity { // TAG is used to d
public class ArduinoBlinkLEDActivity extends Activity {
// TAG is used to debug in Android logcat console
private static final String TAG = "ArduinoAccessory";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
while (connected) {
startService(new Intent(this, ArduinoBlinkLEDActivity.class));
}
iptext = (EditText) findViewById(R.id.ipserveur);
connexion = (Button) findViewById(R.id.button2);
deconnexion = (Button) findViewById(R.id.button1);
}
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
iptext = (EditText) findViewById(R.id.ipserveur);
connexion = (Button) findViewById(R.id.button2);
deconnexion = (Button) findViewById(R.id.button1);
Button btnNextScreen = (Button) findViewById(R.id.btnNextScreen);
//Listening to button event
btnNextScreen.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
//Starting a new Intent
Log.i(TAG, "onCreate");
//super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(new ObjTrackView(this));
}
});
ObjTrackActivity.java:
public class ObjTrackActivity extends Activity {
private static final String TAG = "ObjTrackActivity";
public ObjTrackActivity() {
Log.i(TAG, "Instantiated new " + this.getClass());
}
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
Log.i(TAG, "onCreate");
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(new ObjTrackView(this));
}
ObjTrackView.java:
class ObjTrackView extends SampleViewBase {
private int mFrameSize;
private Bitmap mBitmap;
private int[] mRGBA;
public ObjTrackView(Context context) {
super(context);
}
我的测试不起作用:ArduinoBlinkLEDActivity.java:
public class ArduinoBlinkLEDActivity extends Activity {
// TAG is used to debug in Android logcat console
private static final String TAG = "ArduinoAccessory";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
while (connected) {
startService(new Intent(this, ArduinoBlinkLEDActivity.class));
}
iptext = (EditText) findViewById(R.id.ipserveur);
connexion = (Button) findViewById(R.id.button2);
deconnexion = (Button) findViewById(R.id.button1);
}
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
iptext = (EditText) findViewById(R.id.ipserveur);
connexion = (Button) findViewById(R.id.button2);
deconnexion = (Button) findViewById(R.id.button1);
Button btnNextScreen = (Button) findViewById(R.id.btnNextScreen);
//Listening to button event
btnNextScreen.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
//Starting a new Intent
Log.i(TAG, "onCreate");
//super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(new ObjTrackView(this));
}
});
您需要将ObjTrackView转换为带有附带XML布局的活动,并通过启动它 示例代码:
////////////////////////////////////////////////////////////////////////////////
//
// IntentDemo
//
// Demonstration of the use of basic intent.
//
// Clicking on the 'Launch Intent' button in ActivityA launches a known
// activity, ActivityB.
//
////////////////////////////////////////////////////////////////////////////////
package com.marsatomic.intentdemo;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
public class ActivityA extends Activity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_a);
Button buttonLaunchActivityB = (Button)findViewById(R.id.button_launch_activity_b);
buttonLaunchActivityB.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
Intent i = new Intent(ActivityA.this, ActivityB.class);
startActivity(i);
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu)
{
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity, menu);
return true;
}
}
正如您所知,setContentView将对xml布局文件的引用作为参数,而不是活动或其他任意Java类。您希望第二个类是单独的活动(具有自己的布局等)还是后台工作线程(处理数据等)?