2016-04-27 43 views
0

我想要的是打開我的應用程序,然後單擊圖像按鈕,然後使用另一個圖像按鈕將我帶到另一個活動。但是,當我運行它時,兩個圖像同時出現在兩個活動中。任何人有任何線索?在同一活動上有兩個圖像按鈕

ImageButton imagebtn2 = (ImageButton) findViewById(R.id.imagebtn2); 
     imagebtn2.setOnClickListener(new View.OnClickListener() { 

      @Override 
      public void onClick(View arg0) { 


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

這是我的代碼,MainActivity是相同的代碼,只是不同的名稱。以下是我的清單。

<activity 
      android:name=".MainActivity" 
      android:label="@string/app_name" 
      android:theme="@style/AppTheme.NoActionBar" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

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

     <activity 
      android:name=".Scrape" 
      android:label="@string/app_name1" 
      android:theme="@style/AppTheme.NoActionBar" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

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

這是我的xml。

<ImageButton 
    android:id="@+id/imagebtn1" 
    android:layout_width="150dp" 
    android:layout_height="150dp" 
    android:layout_marginLeft="15dp" 
    android:src="@drawable/got" /> 
<ImageButton 
    android:id="@+id/imagebtn2" 
    android:layout_width="70dp" 
    android:layout_height="80dp" 
    android:layout_marginLeft="15dp" 
    android:src="@drawable/timetable" /> 

MainActivity *

public class MainActivity extends AppCompatActivity { 

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

     ImageButton imagebtn1 = (ImageButton) findViewById(R.id.imagebtn1); 
     imagebtn1.setOnClickListener(new View.OnClickListener() { 

      @Override 
      public void onClick(View arg0) { 


       Intent intent = new Intent 
         (MainActivity.this, Scrape.class); 
       startActivity(intent); 
      } 
     }); 
    } 
+0

第二個活動,你想點擊按鈕後,你應該從清單中刪除意圖過濾器標籤。所以onstart只有一個活動將啓動 – uguboz

+0

我把它們從刮擦部分刪除,但它仍然關閉,任何線索? – DylanB

回答

1

原因是這樣的:

<ImageButton 
android:id="@+id/imagebtn1" 
android:layout_width="150dp" 
android:layout_height="150dp" 
android:layout_marginLeft="15dp" 
android:src="@drawable/got" /> 

<ImageButton 
android:id="@+id/imagebtn2" 
android:layout_width="70dp" 
android:layout_height="80dp" 
android:layout_marginLeft="15dp" 
android:src="@drawable/timetable" /> 

你有相同的佈局文件,兩個圖像按鈕。

如果你想讓兩者在不同的活動中,那麼你可以創建第二個佈局,並在其中放置一個圖像按鈕,然後將第一個圖像按鈕保留在第一個佈局文件中。

如上面註釋中所述,您希望將一項活動作爲應用程序中的啓動程序活動。

我希望這有助於!

+0

以及它擺脫了其中一個按鈕,但當我點擊它停止應用程序,任何想法是什麼原因是什麼? – DylanB

+0

@DylanB:logcat或調試器沒有告訴你? –

+0

它太大而不能發佈,它說錯誤是在第33行,imagebtn2.setOnClickListener(new View.OnClickListener(){ – DylanB

相關問題