Skip to content

Instantly share code, notes, and snippets.

@xu1718191411
Created February 6, 2018 08:53
Show Gist options
  • Save xu1718191411/431e5ec2be66e0dc5746ecca903fbd5f to your computer and use it in GitHub Desktop.
Save xu1718191411/431e5ec2be66e0dc5746ecca903fbd5f to your computer and use it in GitHub Desktop.
Android側で実験したJAVAクラスリファクタリングとインスタンスを持ってアクティビティ遷移 ref: https://qiita.com/xu1718191411/items/9114b1e659cdc4eda98e
public class Contribution implements Serializable{
String category;
Date time;
String title;
String content;
public Contribution(){
category = "general";
time = new Date();
title = "general";
}
public String getCategory() {
return category;
}
public String getTime() {
return time.toString();
}
public void setTime(Date time) {
this.time = time;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public String toString() {
return "Contribution-->Title: " + getTitle() + "\nCategory: " + getCategory() +"\nContent:n" + getContent() + "\nDate: " + getTime();
}
}
public class MyContribution extends Contribution{
public String subTitle;
public MyContribution(String _title,String _content,String _subTitle){
title = _title;
content = _content;
subTitle = _subTitle;
category = "training";
}
public String getSubTitle() {
return subTitle;
}
public String toString(){
return "MyContribution-->Title: " + getTitle() + "\nsubtitle: " + getSubTitle() + "\nCategory: " + getCategory() +"\nContent:\n" + getContent() + "\nDate: " + getTime();
}
}
public class TypeConvertActivity extends AppCompatActivity {
Contribution contribution = null;
ArrayList<MyContribution> myContributionArrayList;
ArrayList<Contribution> contributionArrayList;
ArrayList<MyContribution> myRecoveryContributionArrayList;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_type_convert);
MyContribution myContribution = new MyContribution("JAVA基礎","開発のコツについて","JAVA基礎開発編");
contribution = (Contribution) myContribution;
myContributionArrayList = new ArrayList<MyContribution>();
contributionArrayList = new ArrayList<Contribution>();
myRecoveryContributionArrayList = new ArrayList<MyContribution>();
myContributionArrayList.add(new MyContribution("Java Study1","new String('good day')","String Type"));
myContributionArrayList.add(new MyContribution("Java Study2","new Boolean(true)","Boolean Type"));
myContributionArrayList.add(new MyContribution("Java Study3","new Integer(17)","Integer Type"));
myContributionArrayList.add(new MyContribution("Java Study4","new ArrayList<>()","ArrayList Type"));
myContributionArrayList.add(new MyContribution("Java Study5","new Double(3.1415926)","Double Type"));
for(MyContribution m:myContributionArrayList){
Log.d("myContribution",m.toString());
contributionArrayList.add((Contribution) m);
}
for(Contribution m:contributionArrayList){
Log.d("Contribution",m.toString());
myRecoveryContributionArrayList.add((MyContribution) m);
}
for(MyContribution m:myRecoveryContributionArrayList){
Log.d("Recovery Contribution",m.toString());
}
Button bringContributionToNextPage = (Button) findViewById(R.id.bringContributionToNextPage);
bringContributionToNextPage.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
goToActivity();
}
});
}
private void goToActivity(){
Intent intent = new Intent(getApplication(),ReceiveTypeConvertActivity.class);
intent.putExtra("contribution", contribution);
intent.putExtra("contributionArrayList",contributionArrayList);
startActivity(intent);
}
}
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
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="match_parent"
android:layout_height="match_parent"
tools:context="com.example.syoui.imagetab.java_knowledge.TypeConvertActivity">
<Button
android:id="@+id/bringContributionToNextPage"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="BringContributionToNextPage"/>
</android.support.constraint.ConstraintLayout>
public class ReceiveTypeConvertActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_receive_type_convert);
Intent intent = getIntent();
Serializable contributionSerial = intent.getSerializableExtra("contribution");
if(contributionSerial != null){
Contribution contribution = (Contribution) contributionSerial;
Log.d("Receive:contribution",contribution.toString());
}
Serializable contributionArrayListSerial = intent.getSerializableExtra("contributionArrayList");
if(contributionArrayListSerial != null){
ArrayList<Contribution> contributionArrayList = ( ArrayList<Contribution>)contributionArrayListSerial;
for(Contribution m:contributionArrayList){
Log.d("contributionArrayList",m.toString());
}
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
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="match_parent"
android:layout_height="match_parent"
tools:context="com.example.syoui.imagetab.java_knowledge.ReceiveTypeConvertActivity">
</android.support.constraint.ConstraintLayout>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment