새로운 액티비티 생성
: 마우스 오른쪽 클릭 > new > activity > Empty Activity
/res/layout/activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
tools:context=".MainActivity">
<Button
android:id="@+id/changeBtn"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center|center_horizontal"
android:text="Change Activity" />
</LinearLayout>
/res/layout/activity_sub.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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"
tools:context=".sub">
<TextView
android:id="@+id/subText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:gravity="center"
android:text="액티비티를 변경했어요! 축하해요!"
android:textSize="20sp" />
</LinearLayout>
/java/com.example.changeactivity/MainActivity.java
package com.example.changeactivity;
import ...
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button changeBtn = (Button)findViewById(R.id.changeBtn);
changeBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(getApplicationContext(), sub.class);
intent.putExtra("message", "액티비티가 이동됐다!");
startActivity(intent);
}
});
}
}
/java/com.example.changeactivity/sub.java
package com.example.changeactivity;
import ...
public class sub extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_sub);
Intent intent = getIntent();
Log.d("tag", intent.getStringExtra("message"));
}
}
/결과물
+
layout_gravity vs gravity
1) layout_gravity : ex) 버튼을 레이아웃 상에서 어디에 놓을 것인가?
2) gravity : ex)버튼 안에 있는 text를 버튼 내부 어디에 위치시킬 것인가?
Intent
intent를 통해서 다른 액티비티로 정보를 전달할 수 있다.
intent.putextra는 작성하지 않아도 충분히 동작한다. 정보를 전달하기 위한 코드이다.
'프로젝트 기록 > android' 카테고리의 다른 글
[android/안드로이드] Dialog list, radio, check box형태의 dialog 예제 (0) | 2020.01.08 |
---|---|
[android/안드로이드] Dialog button 버튼 눌러 다이얼로그 띄우기 예제 (1) | 2020.01.08 |
[android/안드로이드] Button Click Event 버튼 클릭 이벤트 예제 (0) | 2020.01.03 |
[android/안드로이드] 버튼 커스터마이징하기, selector (0) | 2020.01.02 |
[android/안드로이드] EditText (0) | 2019.12.29 |