【问题标题】:OnClick imageview to take you from mainactivity to a second activity class?OnClick imageview 将您从 mainactivity 带到第二个活动类?
【发布时间】:2013-10-13 06:35:48
【问题描述】:

我已经让它启动启动屏幕然后转到主菜单,但我似乎无法让我的图像按钮将我带到下一个屏幕(它停止工作),如果你愿意帮助我会很感激的。以下是我的清单:

    <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="org.iimed.www"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="18"
        android:targetSdkVersion="18" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >

        <activity
            android:name="org.iimed.www.Splashscreen"
            android:label="@string/app_name" 
            android:screenOrientation="portrait"
            android:theme="@android:style/Theme.Black.NoTitleBar">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />            
</intent-filter> 

             </activity>                 

        <activity  
            android:name="org.iimed.www.MainActivity"
             android:label="@string/app_name">

        </activity>

        <ImageButton
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:onClick="myClickHandler"
        android:src="@drawable/ic_launcher" android:contentDescription="@id/button"/>


        <activity
            android:name="org.iimed.www.vpbox"
            android:label="@string/app_name">

            </activity>



       </application>








</manifest>enter code here

这是我的 MainActivity java

package org.iimed.www;


import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.View;
import android.widget.ImageButton;
import android.view.View.OnClickListener;
import android.content.ComponentName;




public class MainActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

        ImageButton btn = (ImageButton) findViewById(R.id.button);

        btn.setOnClickListener(new OnClickListener(){

            @Override
            public void onClick(View v){
                Intent intent = new Intent(Intent.ACTION_MAIN);
                intent.setComponent(new ComponentName("org.iimed.www,","org.iimed.www.vpbox"));
                startActivity(intent);
            }
        });

}
}

这是我希望按钮带我到的屏幕的java:

package org.iimed.www;

import android.os.Bundle;
import android.app.Activity;
public class vpbox extends Activity {

    public void onCreate(Bundle vpbox_activity) {

        setContentView(R.layout.vpbox_activity);

}



    }

【问题讨论】:

  • 为什么清单中有图像按钮?

标签: java android eclipse imagebutton


【解决方案1】:

试试这个方法:

btn.setOnClickListener(new OnClickListener(){

        @Override
        public void onClick(View v){

            startActivity(new Intent(MainActivity.this, vpbox.class));
        }
    });

如果有的话,还要从清单文件中删除 ImageButton 代码。

【讨论】:

  • 好的,谢谢大家,我已经从清单文件中取出了所有的 imagebutton 代码,并且我在 mainactivity 中尝试了新代码,但它给了我以下错误“构造函数意图(新view.Onclicklistener(){},class )is undefined" 也是我在 vpbox.class 中的确切位置放置 super.oncreate(savedinstance);代码?
  • 好的,所以我已经摆脱了那个错误,但是当我单击图像按钮时它仍然崩溃,我在哪里放置 super.oncreate 代码?
【解决方案2】:

第一个问题:在清单文件中添加 ImageButton 标记。这应该在您的 activity_main.xml 布局中。 解决:从你的manifext文件中剪切ImageButton标签并将其粘贴到你的layout文件夹内的activity_main.xml页面中。

第二步:在 OnClickListener 内部 变化:

btn.setOnClickListener(new OnClickListener(){

        @Override
        public void onClick(View v){
            Intent intent = new Intent(Intent.ACTION_MAIN);
            intent.setComponent(new ComponentName("org.iimed.www,","org.iimed.www.vpbox"));
            startActivity(intent);
        }
    });

btn.setOnClickListener(new OnClickListener(){

        @Override
        public void onClick(View v){
            Intent intent = new Intent(this, vpbox.class);
            startActivity(intent);
        }
    });

在您的 vpbox 类的 onCreate 中添加一个超级语句,如 MainActivity..

super.onCreate(vpbox_activity);

如果这些事情对您没有帮助,请检查您的 vpbox_activity.xml ..

要从 vpbox 返回到 mainactivity,只需在 vpbox.xml 中添加一个按钮或图像按钮,与 activity_main.xml 相同。并在 tour vpbox.java 中编写与 mainactivity 相同的 onclick 代码 ..只是在您的意图路径中进行了一次更改,例如“;

Intent intent = new Intent(this, MainActivity.class);

注意:请在您的 xml 中创建不同的 id(android:id="@+id/different from first"),否则 R.java 对其常量使用相同的。

【讨论】:

  • 糟糕,我在错误的框中回复了,我该把代码放在 vpbox.xml 的什么位置?在点击图像按钮时它仍然崩溃
  • 您希望在哪个类中使用 imagebutton...我看到您想在 mainactivity 侧添加 imagebutton..如果我没有错,那么您必须将其添加到 activity_main.xml 中。
  • 在 setcontentview(..) 语句之前的 vpbox 活动的 onCreate() 中。并从 ImageButton 标记中删除两行(android:onClick="myClickHandler" 和 android:contentDescription="@id/button")。
  • 如果您以编程方式使用按钮的 onClick,则无需将其写入您的 xml。
  • 我删除了这两行,但现在 imagebutton 标签说“缺少图片上的内容描述?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多