문제

한 활동 화면에서 다른 활동 화면으로 탐색하는 방법은 무엇입니까? 첫 번째 화면에서 버튼을 클릭하면 다른 활동 화면으로 이동 해야하는 버튼이 하나 있습니다.

도움이 되었습니까?

해결책

OnClickListener onClickListener = new OnClickListener() {
    @Override
    public void onClick(View v) {
        startActivity(new Intent(action));
    }
};

Button button = (Button) findViewById(id);
button.setOnClickListener(onClickListener);

다른 팁

가장 사소한 사례 (활동에서 호출) :

startActivity(new Intent(this, ActivityToLaunch.class));

자세한 내용은 여기를 참조하십시오. http://developer.android.com/guide/topics/fundamentals.html

Button x.setOnClickListener(new View.OnClickListener() {
                public void onClick(View v) 
                {
                    Intent i = new Intent(y.this, Activity.class);
                    startActivity(i);                   
                }
        });

여기서 우리는 버튼 x에 대한 리스너를 정의했습니다. OS는이 방법을 호출하고 의도 i로 참조 된 활동을 시작합니다.

공식 튜토리얼 예는 다음과 같습니다.http://developer.android.com/guide/tutorials/notepad/notepad-ex2.html

Button btn = (Button)findViewById(R.id.button1);

btn.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {      

        startActivity(new Intent(TestActivity.this,second.class));

    }
});
public void onClick(View v) 
{
    Intent myintent = new Intent(currentclass.this, nextactivity.class);
    startActivity(myintent);                               
}
final Context cont = this;
Button btnClickABC =(Button)findViewById(R.id.btnClickABC);
btnClickABC.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {                   
                startActivity(new Intent(cont, NextActivity.class));

            }
        });

이 작업은 의도로 지명 된 Android의 메인 빌딩 블록 중 하나와 방법 중 하나를 사용하여 달성 할 수 있습니다. public void startActivity (Intent intent) 활동 수업에 속합니다.

의도는 수행 할 작업에 대한 추상 설명입니다. STARTACTIVIDIVE와 함께 사용하여 활동을 시작하고, 방송 인디언트가 관심있는 브로드 카스트 리버 구성 요소로 보내기 위해, STARTERVICE (의도) 또는 BINTSERVICE (의도, ServiceConnection, Int)를 백그라운드 서비스와 통신합니다.

의도는 다른 응용 프로그램의 코드간에 늦은 런타임 바인딩을 수행하기위한 시설을 제공합니다. 가장 중요한 사용은 활동을 시작하는 데있어서 활동 사이의 접착제로 생각할 수 있습니다. 기본적으로 수행 할 동작에 대한 추상적 인 설명을 담은 수동 데이터 구조입니다.

공식 문서를 참조하십시오. http://developer.android.com/reference/android/content/intent.html

public void startActivity (Intent intent) - 새로운 활동을 시작하는 데 사용됩니다.

따라서 두 개의 활동 클래스가 있고 버튼 클릭에 OnClickListener() 그러면 한 활동에서 다른 활동으로 이동하고 싶습니다.

  1. 현재 행동 - 이것은 두 번째 활동으로 가고 싶은 현재 활동입니다.

  2. NextActivity - 이것은 당신이 움직이고 싶은 다음 활동입니다.

그래서 의도는 다음과 같습니다

Intent(PresentActivity.this, NextActivity.class)

마지막으로 이것은 완전한 코드가 될 것입니다

  public class PresentActivity extends Activity {
        protected void onCreate(Bundle icicle) {
            super.onCreate(icicle);

            setContentView(R.layout.content_layout_id);

            final Button button = (Button) findViewById(R.id.button_id);
            button.setOnClickListener(new View.OnClickListener() {
                public void onClick(View v) {
                    // Perform action on click   

                    Intent activityChangeIntent = new Intent(PresentActivity.this, NextActivity.class);

                    // currentContext.startActivity(activityChangeIntent);

                    PresentActivity.this.startActivity(activityChangeIntent);
                }
            });
        }
    }

이 exmple은 버튼 클릭과 관련이 있습니다. 내부 버튼 클릭으로 작성된 코드를 사용할 수 있습니다. OnClickListener() 활동 사이를 전환하려는 곳에서.

다음 코드를 사용하십시오. 이것이 도움이되기를 바랍니다.

 Button button = (Button)findViewById(R.id.xxx);
    button .setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
        Intent intent=new Intent(CurrentActivity.this,NextActivity.class);
        startActivity(intent);
        }
    });

트리플 엑스 버튼의 XML에서 ID입니다.

startActivity(new Intent(this,newActivity.class));

한 활동에서 다른 활동으로 전환하는 것은 정말 간단하지만 새로운 것은 까다 롭습니다. 다음 클래스는 정의해야합니다 AndroidManifest.xml. 테스터 클래스입니다.

<activity
  android:name=".Tester"
  android:label="@string/title_activity_tester" >`enter code here`
</activity>


final Button button = (Button) findViewById(R.id.btnGo);// btnGo is id 
button.setOnClickListener(new View.OnClickListener() {
    public void onClick(View v) {
        Intent i = new Intent(CurrentClass.this, Tester.class);
        startActivity(i);
    }

이 코드 스 니펫을 사용하여 다음 화면으로 이동할 수 있습니다.

코 틀린

startActivity(Intent(this, LoginActivity::class.java))

자바

startActivity(new Intent(this, LoginActivity.class))

참조는 다음과 같습니다. Android 개발자 - 다른 활동을 시작합니다

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top