프로그램 이름은 Activity_transform으로 하겠습니다.
Empty Activity를 선택해줍니다.
레이아웃에서 Plain Text를 추가해줍니다.
ID는 nameText
text는 지워주고 hint에 이름을 넣어서 사용자가 사용하기 쉽게 바꾸어줍니다.
nameButton을 만들어줍니다.
text는 전송으로 바꾸어줍니다.
버튼을 눌럿을 때 다른 레이아웃으로 전환하는 버튼입니다.
activity_sub라고 만들어줍니다.
textView를 만들어주고 id를 아까와 마찬가지로 nameText라고 해줍니다.
새로운 activity class를 만들어줍니다.
activity의 이름은 SubActivity로 해줍니다.
다시 메인 엑티비티로 돌아와서 코드를 작성해줍니다.
package org.techtown.activity_transform;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final EditText nameText = (EditText) findViewById(R.id.nameText);
Button nameButton = (Button) findViewById(R.id.nameButton);
nameButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String name = nameText.getText().toString();
Intent intent = new Intent(getApplicationContext(),SubActivity.class);
intent.putExtra("nameText",name);
startActivity(intent);
}
});
}
}
프로그램 이름은 Activity_transform으로 하겠습니다.
Empty Activity를 선택해줍니다.
레이아웃에서 Plain Text를 추가해줍니다.
ID는 nameText
text는 지워주고 hint에 이름을 넣어서 사용자가 사용하기 쉽게 바꾸어줍니다.
nameButton을 만들어줍니다.
text는 전송으로 바꾸어줍니다.
버튼을 눌럿을 때 다른 레이아웃으로 전환하는 버튼입니다.
activity_sub라고 만들어줍니다.
textView를 만들어주고 id를 아까와 마찬가지로 nameText라고 해줍니다.
새로운 activity class를 만들어줍니다.
activity의 이름은 SubActivity로 해줍니다.
다시 메인 엑티비티로 돌아와서 코드를 작성해줍니다.
간단히 설명하면
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
메인 엑티비티를 보여줍니다.
final EditText nameText = (EditText) findViewById(R.id.nameText);
이객체는 사용자가 입력한 값을 저장하는 객체
Button nameButton = (Button) findViewById(R.id.nameButton);
버튼의 상태를 저장할 객체
nameButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String name = nameText.getText().toString();
Intent intent = new Intent(getApplicationContext(),SubActivity.class);
intent.putExtra("nameText",name);
startActivity(intent);
}
버튼을 클릭햇을때 nameText에 이름을 가저오고
intent(새로운창을 열기위한 객체)를 활용해 subActivity를 실행할수 있도록 해줍니다.
.putExtra를 이용해 nameText로 문자를 전달합니다(받을때 nameText로 받음)
startActivity를 통해 코드를 실행합니다.
sub activity로 이동해줍니다.
package org.techtown.activity_transform;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.widget.TextView;
import android.os.Bundle;
public class SubActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle bundle){
super.onCreate(bundle);
setContentView(R.layout.activity_sub);
TextView nameText = (TextView) findViewById(R.id.nameText);
Intent intent = getIntent();
nameText.setText(intent.getStringExtra("nameText").toString());
}
}
public class SubActivity extends AppCompatActivity {
상위클래스를 상속받습니다.
setContentView(R.layout.activity_sub);
Activity_sub에 해당하는 레이아웃을 작성해줍니다.
TextView nameText = (TextView) findViewById(R.id.nameText);
nameText에는 아까 작성햇던 레이아웃의 nameText 뷰를 가져옵니다.
Intent intent = getIntent();
인텐트로 아까 넘어온 값을 받을수 있도록 해줍니다.
nameText.setText(intent.getStringExtra("nameText").toString());
인텐트에서 넘어온값중에서 nameText로 넘어온값을 toString으로 바꿔줍니다.
아까 nameText로 넘겨줘서 받을때도 nameText
마지막으로 환경설정을 해줍니다.
마지막으로 mainifests로 들어가서 다음을 추가해줍니다.
'개인공부' 카테고리의 다른 글
안드로이드 : 버튼 이미지 애니메이션(Image Button) (0) | 2020.07.08 |
---|---|
안드로이드 : 유튜브API연동 Youtube API (0) | 2020.07.08 |
안드로이드 : 리스트 뷰 (0) | 2020.07.08 |
안드로이드 : 네비게이션 메뉴바 만들기. (0) | 2020.07.08 |
안드로이드 : 알림창 and 이벤트 발생 (0) | 2020.07.08 |