Android的图像按钮开启新活动 [英] Android image button open new activity
问题描述
我想从Android中的图像按钮,打开新的活动。我试着用这个code,但不起作用。
main.class
进口android.app.Activity;
进口android.content.Intent;
进口android.os.Bundle;
进口android.content.Context;
进口android.view.View;
进口android.widget.ImageButton;
公共类主要活动扩展{@覆盖
保护无效的onCreate(捆绑savedInstanceState){
super.onCreate(savedInstanceState);
的setContentView(R.layout.main);
openMenu();
}公共无效openMenu(){ 最后上下文的背景下=这; 的ImageButton imgbtn =(的ImageButton)findViewById(R.id.menu_button); imgbtn.setOnClickListener(新View.OnClickListener(){ @覆盖
公共无效的onClick(视图v){ 意图菜单=新意图(背景下,menu.class);
startActivity(菜单); } });
}}
menu.class
公共类菜单扩展活动{@覆盖
保护无效的onCreate(捆绑savedInstanceState){
super.onCreate(savedInstanceState);
的setContentView(R.layout.menu);
}
错误:
android.content.ActivityNotFoundException:无法找到明确的活动类{dev.com.test / dev.com.test.menu};有你宣布你的AndroidManifest.xml这个活动?
我的回答:是的。
<应用
机器人:allowBackup =真
机器人:图标=@绘制/图标
机器人:标签=@字符串/ APP_NAME
机器人:主题=@风格/ AppTheme>
<活动
机器人:主NAME =
机器人:标签=@字符串/ APP_NAME>
&所述;意图滤光器>
<作用机器人:名字=android.intent.action.MAIN/> <类机器人:名字=android.intent.category.LAUNCHER/>
&所述; /意图滤光器>
< /活性GT;
< /用途>
只要确保你的AndroidManifest看起来像这样
<应用
机器人:allowBackup =真
机器人:图标=@绘制/图标
机器人:标签=@字符串/ APP_NAME
机器人:主题=@风格/ AppTheme>
<活动
机器人:主NAME =
机器人:标签=@字符串/ APP_NAME>
&所述;意图滤光器>
<作用机器人:名字=android.intent.action.MAIN/> <类机器人:名字=android.intent.category.LAUNCHER/>
&所述; /意图滤光器>
< /活性GT; <活动
安卓:名称=菜单> //你需要添加应用里面这些标签的3行。
< /活性GT;< /用途>
错误 android.content.ActivityNotFoundException:无法找到明确的活动类{dev.com.test / dev.com.test.menu};有你在你的AndroidManifest.xml?宣布本次活动
是非常开门见山。当你创建一个新的活动,确保这项活动是注册在的AndroidManifest.xml
的应用
标签内。
I would like to open new activity from an image button in android. I tried with this code, but doesn't work.
main.class
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.content.Context;
import android.view.View;
import android.widget.ImageButton;
public class main extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
openMenu();
}
public void openMenu() {
final Context context = this;
ImageButton imgbtn = (ImageButton) findViewById(R.id.menu_button);
imgbtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent menu = new Intent(context, menu.class);
startActivity(menu);
}
});
}
}
menu.class
public class menu extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.menu);
}
the error: android.content.ActivityNotFoundException: Unable to find explicit activity class {dev.com.test/dev.com.test.menu}; have you declared this activity in your AndroidManifest.xml? My answer: yes
<application
android:allowBackup="true"
android:icon="@drawable/icon"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".main"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
Just make sure your AndroidManifest looks like this
<application
android:allowBackup="true"
android:icon="@drawable/icon"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".main"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".menu"> // you need to add these 3 lines inside application tag.
</activity>
</application>
The error android.content.ActivityNotFoundException: Unable to find explicit activity class {dev.com.test/dev.com.test.menu}; have you declared this activity in your AndroidManifest.xml?
is very much straight to the point. Whenever you create a new activity, make sure that activity is registered in AndroidManifest.xml
inside the application
tag.
这篇关于Android的图像按钮开启新活动的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!