2016-03-31 42 views
0

我是android新手。我想知道如何從簡單的活動切換到抽屜活動。我讀到有兩種方法可以做到這一點。如何從簡單活動切換到抽屜活動?

首先是Intent i =new Intent("com.example.signin");

第二是Intent i =new Intent(MainActivity.this,signin.class);

我試圖兩者。但在第一種情況下,包含工具欄,抽屜和裏面的按鈕的佈局顯得非常完美。但按鈕功能不起作用。在第二種情況下,按鈕功能正在工作,但佈局受到干擾。

任何人都可以告訴我這個問題的解決方案嗎?我正在使用Android Studio。 這裏是我的代碼:

MainActivity

package com.example.asus1.tlogin; 

import android.content.Intent; 

import android.os.Bundle; 
import android.support.v7.app.AppCompatActivity; 
import android.text.Layout; 
import android.view.View; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.Toast; 

public class MainActivity extends AppCompatActivity { 
    private Button signInBtn; 
    private Button signUpBtn; 
    private Button submit; 
    private EditText mUsername, mPassword; 
    private Layout mDrawerLayout; 

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

     signInBtn = (Button) findViewById(R.id.signin); 
     signUpBtn = (Button) findViewById(R.id.signup); 
     submit = (Button) findViewById(R.id.submit); 
     mUsername = (EditText) findViewById(R.id.username); 
     mPassword = (EditText) findViewById(R.id.password); 

     //String userName = mUsername.getText().toString(); 
     // String password = mPassword.getText().toString(); 

     signUpBtn.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 

       Intent intent = new Intent("com.example.asus1.tlogin.SignUpActivity"); 
       startActivity(intent); 
      } 
     }); 

     submit.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       if (mUsername.getText().toString().isEmpty()) { 
        Toast.makeText(getApplicationContext(), "Please enter username..", Toast.LENGTH_SHORT).show(); 
        mPassword.setText(""); 
        mUsername.setText(""); 
       } else if (mPassword.getText().toString().isEmpty()) { 
        Toast.makeText(getApplicationContext(), "Please enter password..", Toast.LENGTH_SHORT).show(); 
        mPassword.setText(""); 
        mUsername.setText(""); 
       } else if (mUsername.getText().toString().equals("gaurav") && mPassword.getText().toString().equals("gaurav")) { 
        Toast.makeText(getApplicationContext(), "Login Successful..", Toast.LENGTH_LONG).show(); 

        Intent intent = new Intent(MainActivity.this,ContentDrawer.class); 
        startActivity(intent); 
        setContentView(R.layout.content_drawer); 

       } else { 
        Toast.makeText(getApplicationContext(), "Wrong username or password..", Toast.LENGTH_LONG).show(); 
        mPassword.setText(""); 
        mUsername.setText(""); 
       } 
      } 
     }); 
    } 
} 

ContentDrawer.java:

package com.example.asus1.tlogin; 

import android.content.Intent; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.support.v7.widget.Toolbar; 
import android.text.Layout; 
import android.view.View; 
import android.widget.Button; 

public class ContentDrawer extends AppCompatActivity { 
    private Button createBtn; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.content_drawer); 
     //Toolbar toolbar = (Toolbar)findViewById(R.id.draw); 

     createBtn = (Button)findViewById(R.id.createBtn); 
     createBtn.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 

       Intent intent1 = new Intent(getApplicationContext(),CreateGroup.class); 
       startActivity(intent1); 

      } 
     }); 
    } 
} 

ContentDrawer.xml:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    app:layout_behavior="@string/appbar_scrolling_view_behavior" 
    tools:context="com.example.asus1.tlogin.DrawerActivity" 
    tools:showIn="@layout/app_bar_drawer" 
    android:orientation="vertical" 
    android:weightSum="1" 
    android:background="#ffffff"> 
    <Button 
     android:layout_width="match_parent" 
     android:layout_height="140dp" 
     android:text="Create your personal profile" 
     android:background="#d31313" 
     android:textColor="#ffffff" 
     android:textAllCaps="false" 
     android:id="@+id/createBtn" 
     android:clickable="false" /> 
    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="140dp" 
     android:orientation="horizontal" 
     android:background="#f29494" 
     android:clickable="true" 
     android:id="@+id/linear"> 

     <Button 
      android:layout_width="180dp" 
      android:layout_height="match_parent" 
      android:text="Join group" 
      android:id="@+id/joinGroup" 
      android:background="#984848" 
      android:textAllCaps="false" 
      android:clickable="true" /> 

     <Button 
      android:layout_width="195dp" 
      android:layout_height="match_parent" 
      android:text="Setup a group" 
      android:id="@+id/button2" 
      android:background="#4e7db2" 
      android:textAllCaps="false" 
      android:clickable="true" /> 
    </LinearLayout> 

    <Button 
     android:layout_width="match_parent" 
     android:layout_height="140dp" 
     android:text="Setup an eventk" 
     android:id="@+id/eventBtn" 
     android:background="#e7ed21" 
     android:textAllCaps="false" 
     android:clickable="true" /> 

    <Button 
     android:layout_width="match_parent" 
     android:layout_height="140dp" 
     android:text="Notifications" 
     android:id="@+id/button4" 
     android:textAllCaps="false" 
     android:background="#8b9ddb" /> 

</LinearLayout> 

MainActivity.xml:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    xmlns:com.facebook.widget.LoginButtonandroid="http://schemas.android.com/apk/res-auto" 
    tools:context="com.example.asus1.tlogin.MainActivity"> 

    <ImageView 
     android:layout_width="match_parent" 
     android:layout_height="300dp" 
     android:src="@drawable/roomates1" 
     android:id="@+id/imageView" /> 
     <LinearLayout android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_marginTop="250dp" 
      android:id="@+id/linearLayout"> 
      <Button 
       android:layout_width="200dp" 
       android:layout_height="40dp" 
       android:layout_alignBottom="@+id/imageView" 
       android:layout_alignParentLeft="true" 
       android:layout_alignParentStart="true" 
       android:id="@+id/signup" 
       android:background="#0000" 
       android:text="SIGN UP" 
       android:textAlignment="gravity" /> 

      <Button 
       android:layout_width="200dp" 
       android:layout_height="40dp" 
       android:id="@+id/signin" 
       android:layout_alignBottom="@+id/imageView" 
       android:layout_toRightOf="@+id/signup" 
       android:layout_toEndOf="@+id/signup" 
       android:background="#0000" 
       android:text="    SIGN IN" 
       android:textAlignment="textStart" 
       android:textColor="#fefefe" 
       android:textStyle="bold" /> 
      /> 
     </LinearLayout> 

    <LinearLayout 
     android:orientation="vertical" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_below="@+id/linearLayout" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" 
     android:weightSum="1"> 

     <EditText 
      android:layout_width="272dp" 
      android:layout_height="wrap_content" 
      android:inputType="textEmailAddress" 
      android:ems="10" 
      android:id="@+id/username" 
      android:layout_gravity="center_horizontal" 
      android:layout_marginTop="20dp" 
      android:hint="Username" 
      android:textAlignment="center" /> 

     <EditText 
      android:layout_width="274dp" 
      android:layout_height="wrap_content" 
      android:inputType="textPassword" 
      android:ems="10" 
      android:id="@+id/password" 
      android:layout_gravity="center_horizontal" 
      android:hint="Password" 
      android:textAlignment="center" /> 

     <Button 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="SIGN IN" 
      android:id="@+id/submit" 
      android:layout_gravity="center_horizontal" 
      android:layout_marginTop="20dp" 
      android:background="@drawable/roundbutton"/> 

    </LinearLayout> 


</RelativeLayout>  
+1

plz分享您的應用程序的代碼和屏幕截圖.... !!! –

回答

0

佈局被打亂

我假設你的意思是在這個你完全取代在MainActivity的佈局?

這可以通過不這樣做來解決。

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

// Remove this line 
/* setContentView(R.layout.content_drawer); */ 

除此之外,似乎你應該可以啓動其他活動就好了。

+0

Thnx男士作品 – Omi

+0

您可以使用接受答案旁邊的複選標記來顯示您的感謝。這讓網站上的其他人知道這是您的問題的解決方案。 –