我正在尝试创建按钮,单击它们后将切换到不同的布局/活动。有人可以帮忙吗?
package com.example.darsh.popup;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.view.WindowManager;
import android.widget.PopupWindow;
import android.widget.Toast;
public class Main extends Activity {
private LayoutInflater inflater;
private PopupWindow pw;
private View popupView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
popupView = inflater.inflate(R.layout.menu_layout, null, false);
}
public void showPopup(View view) {
pw = new PopupWindow(getApplicationContext());
pw.setTouchable(true);
pw.setFocusable(true);
pw.setOutsideTouchable(true);
pw.setTouchInterceptor(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_OUTSIDE) {
pw.dismiss();
return true;
}
return false;
}
});
pw.setWidth(WindowManager.LayoutParams.WRAP_CONTENT);
pw.setHeight(WindowManager.LayoutParams.WRAP_CONTENT);
pw.setOutsideTouchable(false);
pw.setContentView(popupView);
pw.showAsDropDown(view, 0, 0);
}
public void clickOne(View view) {
pw.dismiss();
Toast.makeText(getBaseContext(), "Link New User", Toast.LENGTH_SHORT)
.show();
}
public void clickTwo(View view) {
pw.dismiss();
Toast.makeText(getBaseContext(), "Edit Core Device 1", Toast.LENGTH_SHORT)
.show();
}
public void clickThree(View view) {
pw.dismiss();
Toast.makeText(getBaseContext(), "Delete Core Device 1", Toast.LENGTH_SHORT)
.show();
}
我需要做的就是在用户点击“链接新用户”,“编辑核心设备1”或LinkMenu.Java/linkmenu.xml >“删除核心设备1”但我不知道要添加到当前源代码中的内容。
答案 0 :(得分:2)
使用Intent切换到其他活动。
Intent intent = new Intent(Context, YourClass.class);
startActivity(intent);
答案 1 :(得分:1)
activity_main.xml中:
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="sendMessage"
android:text="@string/button_send" />
MainActivity.java
/** Called when the user clicks the Send button */
public void sendMessage(View view) {
Intent intent = new Intent(this, DisplayMessageActivity.class);
EditText editText = (EditText) findViewById(R.id.edit_message);
String message = editText.getText().toString()
intent.putExtra(EXTRA_MESSAGE, message);
startActivity(intent);
}
按钮是clicke sendMessage(View view)
函数被调用后。该函数获取文本字段值并将其“映射”在共享内存中。函数的最后一行创建并启动新活动,旧活动不再可见。
答案 2 :(得分:0)
您可以尝试以下代码:
Button button = (Button) findViewById(R.id.button1);
button.setOnClickListener(){
public void onCLick(View v){
Intent i =new Intent(YouCurrentClass.this, NameOfsecondactivity.class);
startActivity(i);
}
};