2015-06-27 64 views
0

我有这个WelcomeActivity我在这里编程了4个ImageButtons来启动另一个活动。ImageButtons不工作 - Android Studio

这是我的代码:

public class WelcomeScreen extends Activity { 

ImageButton completeprofile; 
ImageButton gotoportfolio; 
ImageButton findfriends; 
ImageButton readnews; 

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.welcome_activity); 

    completeprofile = (ImageButton) findViewById(R.id.completeprofile); 
    gotoportfolio = (ImageButton) findViewById(R.id.gotoportfolio); 
    findfriends = (ImageButton) findViewById(R.id.findfriends); 
    readnews = (ImageButton) findViewById(R.id.readnews); 

    completeprofile.setOnClickListener(new View.OnClickListener() { 

    @Override 
    public void onClick(View view) { 
      Intent i = new Intent(WelcomeScreen.this, LoginMember.class); 
      startActivity(i); 
     } 
    }); 

    gotoportfolio.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View view) { 
      Intent i = new Intent(WelcomeScreen.this, MainActivity.class); 
      startActivity(i); 
     } 
    }); 

    findfriends.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View view) { 
      Intent i = new Intent(WelcomeScreen.this, MainActivity.class); 
      startActivity(i); 
     } 
    }); 

    readnews.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View view) { 
      Intent i = new Intent(WelcomeScreen.this, RegisterMember.class); 
      startActivity(i); 
     } 
    }); 

}} 

问题是,他们的行为事实上象按钮,当我点击他们,但没有活动启动,这是布局声明:

<LinearLayout 
     android:orientation="horizontal" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_marginTop="70dp" 
     android:layout_marginLeft="105dp"> 

     <ImageButton 
      android:layout_width="55dp" 
      android:layout_height="55dp" 
      android:id="@+id/completeprofile" 
      android:src="@drawable/completeprofile" 
      android:layout_marginLeft="75dp" 
      android:contentDescription="completeprofile" /> 

     <ImageButton 
      android:layout_width="55dp" 
      android:layout_height="55dp" 
      android:id="@+id/gotoportfolio" 
      android:src="@drawable/gotoportfolio" 
      android:layout_marginLeft="65dp" /> 

     <ImageButton 
      android:layout_width="55dp" 
      android:layout_height="55dp" 
      android:id="@+id/findfriends" 
      android:src="@drawable/findfriends" 
      android:layout_marginLeft="65dp" /> 

     <ImageButton 
      android:layout_width="55dp" 
      android:layout_height="55dp" 
      android:id="@+id/readnews" 
      android:src="@drawable/readnews" 
      android:layout_marginLeft="65dp" /> 

    </LinearLayout> 

为什么这发生?也许意图发布有一些问题?

任何想法?

在此先感谢!

编辑

这里的清单:

<?xml version="1.0" encoding="utf-8"?> 

<uses-sdk 
    android:minSdkVersion="10" 
    android:targetSdkVersion="21" 
    tools:overrideLibrary="android.support.multidex" /> 

<supports-screens 
    android:largeScreens="true" 
    android:normalScreens="false" 
    android:requiresSmallestWidthDp="600" 
    android:smallScreens="false" 
    android:xlargeScreens="true" /> 

<uses-permission android:name="android.permission.CAMERA" /> 

<uses-feature android:name="android.hardware.camera" /> 
<uses-feature android:name="android.hardware.camera.autofocus" /> 

<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.RECORD_AUDIO" /> 
<uses-permission android:name="android.permission.CALL_PHONE" /> 
<uses-permission android:name="android.permission.READ_PHONE_STATE" /> 

<uses-permission 
    android:name="android.permission.READ_EXTERNAL_STORAGE" 
    android:maxSdkVersion="18" /> 

<!-- <uses-sdk /> --> 
<application 
    android:allowBackup="true" 
    android:hardwareAccelerated="true" 
    android:icon="@drawable/logo" 
    android:label="Shairlook" 
    android:theme="@style/AppTheme" > 
    <activity 
     android:name="com.kkoci.shairlook.SplashScreen" 
     android:configChanges="orientation" 
     android:label="Shairlook" 
     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="com.kkoci.shairlook.MemberActivity" 
     android:configChanges="orientation" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait" > 


    </activity> 
    <activity 
     android:name="com.kkoci.shairlook.RegisterMember" 
     android:configChanges="orientation" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait" > 


    </activity> 
    <activity 
     android:name="com.kkoci.shairlook.LoginMember" 
     android:configChanges="orientation" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait" > 


    </activity> 
    <activity 
     android:name="com.kkoci.shairlook.WelcomeScreen" 
     android:configChanges="orientation" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait" > 

    </activity> 
    <activity 
     android:name="com.kkoci.shairlook.YoutubeVid" 
     android:configChanges="orientation" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait" > 

    </activity> 
    <activity 
     android:name="com.kkoci.shairlook.ProfileMember" 
     android:configChanges="orientation" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait" > 


    </activity> 
    <activity 
     android:name="com.kkoci.shairlook.PortfolioMember" 
     android:configChanges="orientation" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait" > 


    </activity> 
    <activity 
     android:name="com.kkoci.shairlook.ForgotPassActivity" 
     android:configChanges="orientation" 
     android:label="@string/app_name" 
     android:screenOrientation="portrait" > 


    </activity> 
    <activity 
     android:name="com.kkoci.shairlook.MainActivity" 
     android:configChanges="orientation" 
     android:label="Shairlook" 
     android:screenOrientation="portrait" > 


    </activity> 
    <activity 
     android:name="com.kkoci.shairlook.WebActivity" 
     android:label="@string/app_name" 
     android:theme="@android:style/Theme.Holo" > 

    </activity> 

    <meta-data 
     android:name="com.facebook.sdk.ApplicationId" 
     android:value="@string/facebook_app_id" /> 
</application> 

+0

我应该在被调用的活动上引用什么吗? – NeoVe

+2

您是否在清单中声明活动? –

+0

当然...这很奇怪我不知道 – NeoVe

回答

0

你应该从每一个的onClick方法除去上面的 '@覆盖',他们不需要,这可能会导致你的问题。

+0

雅与@override有一个警告,但仍然是相同的问题=( – NeoVe

+0

@NeoVe你可以发布你的清单文件吗?你目前的文件没有问题,所以它一定是错误的文件,这里不显示 – edwoollard

+0

是@edwoollard,我编辑了我的问题,非常感谢! – NeoVe

3

@override不会导致问题。如果活动添加在清单中并且以相同的包装显示,那就太奇怪了。

  1. 请问您可以添加调试登录onClick(),这将缩小问题是否真的是回调与否的问题。

  2. 尝试机器人:可点击= “真”/机器人:可调焦= “真”/机器人:focusableInTouchMode = “真” 作为附加属性的ImageButton的

希望这有助于!

+0

嗨,要添加调试到看看会发生什么 – NeoVe

+0

我正在调试它,但什么也没有发生,我删除@override,因为有一个警告,但仍然是同样的问题,这些按钮调用活动编程和宣布清单,=/ – NeoVe

+0

也许我需要引用一些活动我在打电话? – NeoVe