public class WriteActivity extends AppCompatActivity {
Button btn_go;
EditText edt_content;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_write);
ActionBar actionBar = getSupportActionBar();
actionBar.hide();
btn_go = findViewById(R.id.btn_go);
edt_content = findViewById(R.id.edt_content);
btn_go.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent();
intent.putExtra("content",edt_content.getText().toString());
setResult(RESULT_OK,intent);
finish();
}
});
}
}
btn_write.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(MainActivity.this,
WriteActivity.class);
startActivityForResult(intent, REQUEST_WRITE);
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK) {
if (requestCode == REQUEST_LOGIN) {
String id = data.getStringExtra("id");
tv_title1.setText(id+"님 환영합니다");
btn_write.setEnabled(true);
btn_write.setBackgroundColor(Color.parseColor("#f47100"));
btn_write.setTextColor(Color.parseColor("#ffc77d"));
btn_login.setText("로그아웃");
}
else if(requestCode == REQUEST_WRITE){
list.add(data.getStringExtra("content"));
adapter.notifyDataSetChanged();
}
}
}
}
커스텀
- VO (DTO)
-Value Object
-사용자 정의 자료형
-개발자가 필요에 의해 새롭게 정의한 자료형
-ex)학생 한 명의 정보를 한묶음으로 묶어야겠다
(DateBase의 한 행의 정보를 한묶음으로 묶어주고 싶다.)
-구성요소 : 필드, 생성자, get/set, toString
public class DirectVO {
private String title, address;
public DirectVO(String title, String address) {
this.title = title;
this.address = address;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
@Override
public String toString() {
StringBuffer temp = new StringBuffer();
temp.append("DirectVO {");
temp.append("title='");
temp.append(title);
temp.append(",address='");
temp.append(address);
temp.append("}");
return temp.toString();
}
}
=============================
import androidx.appcompat.app.ActionBar;
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.RecyclerView;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.ListView;
import java.util.ArrayList;
public class MainActivity extends AppCompatActivity {
ListView rv_main;
Button btn_add;
ArrayList<DirectVO> list;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ActionBar actionBar = getSupportActionBar();
actionBar.hide();
rv_main = findViewById(R.id.rv_main);
btn_add = findViewById(R.id.btn_add);
list = new ArrayList<>();
DirectVO vo1 = new DirectVO("네이버","https://www.naver.com/");
DirectVO vo2 = new DirectVO("구글","https://www.google.com/");
DirectVO vo3 = new DirectVO("유튜브","https://www.youtube.com/");
list.add(vo1);
list.add(vo2);
list.add(vo3);
}
}