diff --git a/.idea/misc.xml b/.idea/misc.xml index c59d7c2..0d1cc0d 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -48,10 +48,12 @@ + + diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/animation/AnimationActivity.java b/app/src/main/java/org/ntlab/acanthus_client/views/animation/AnimationActivity.java index 242a3b8..ab0ef4a 100644 --- a/app/src/main/java/org/ntlab/acanthus_client/views/animation/AnimationActivity.java +++ b/app/src/main/java/org/ntlab/acanthus_client/views/animation/AnimationActivity.java @@ -39,7 +39,7 @@ private Timer timer; private CountUpTimerTask timerTask; private Handler handler = new Handler(Looper.getMainLooper()); - private int msec = 1000; + private int msec = 500; //ボタン系 private boolean buttonView = true; @@ -49,6 +49,7 @@ private Button buttonDetail; private Button buttonSkip; private Button buttonBack; + private Button buttonVisible; //animationCanvasの表示 @@ -56,7 +57,7 @@ protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_animation); - //animationCanvas = this.findViewById(R.id.animationMyCanvas); + animationCanvas = this.findViewById(R.id.animationMyCanvas); init(); //intentでHomeFragmentから渡されたanimation情報を取得 @@ -131,13 +132,11 @@ startActivity(intent); } }); - } - //Activity内のボタンの表示/非表示 - @Override - public boolean onTouchEvent(MotionEvent motionEvent) { - switch (motionEvent.getAction()){ - case MotionEvent.ACTION_DOWN: - //画面タップで表示されてたら非表示にする。 + + //Activity内のボタンの表示/非表示 + buttonVisible = findViewById(R.id.button_visible); + buttonVisible.setOnClickListener(new View.OnClickListener(){ + public void onClick(View v) { if(buttonView) { buttonReset.setVisibility(View.INVISIBLE); buttonPlayback.setVisibility(View.INVISIBLE); @@ -158,10 +157,40 @@ buttonView = true; } - } - return false; + } + }); } + //Activity内のボタンの表示/非表示 +// @Override +// public boolean onTouchEvent(MotionEvent motionEvent) { +// switch (motionEvent.getAction()){ +// case MotionEvent.ACTION_DOWN: +// //画面タップで表示されてたら非表示にする。 +// if(buttonView) { +// buttonReset.setVisibility(View.INVISIBLE); +// buttonPlayback.setVisibility(View.INVISIBLE); +// buttonDetail.setVisibility(View.INVISIBLE); +// buttonClose.setVisibility(View.INVISIBLE); +// buttonSkip.setVisibility(View.INVISIBLE); +// buttonBack.setVisibility(View.INVISIBLE); +// +// buttonView = false; +// } +// else { +// buttonReset.setVisibility(View.VISIBLE); +// buttonPlayback.setVisibility(View.VISIBLE); +// buttonDetail.setVisibility(View.VISIBLE); +// buttonClose.setVisibility(View.VISIBLE); +// buttonSkip.setVisibility(View.VISIBLE); +// buttonBack.setVisibility(View.VISIBLE); +// +// buttonView = true; +// } +// } +// return false; +// } + //////////////////////////////////////////////////////////////////////////// //以下アニメーション操作画面 diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/animation_detail/AnimationDetailActivity.java b/app/src/main/java/org/ntlab/acanthus_client/views/animation_detail/AnimationDetailActivity.java index 2d6f9b5..7ebf505 100644 --- a/app/src/main/java/org/ntlab/acanthus_client/views/animation_detail/AnimationDetailActivity.java +++ b/app/src/main/java/org/ntlab/acanthus_client/views/animation_detail/AnimationDetailActivity.java @@ -17,12 +17,17 @@ import org.ntlab.acanthus_client.Acanthus; import org.ntlab.acanthus_client.R; import org.ntlab.acanthus_client.entities.Animation; +import org.ntlab.acanthus_client.entities.AnimationJson; import org.ntlab.acanthus_client.views.animation.AnimationActivity; import org.ntlab.acanthus_client.views.animation.AnimationCanvas; +import org.ntlab.acanthus_client.views.userpage.UserPageActivity; +import org.ntlab.acanthus_client.views.userpage.followerList.FollowerListActivity; import java.io.IOException; import java.io.InputStream; import java.net.URL; +import java.util.ArrayList; +import java.util.Collection; public class AnimationDetailActivity extends AppCompatActivity { @@ -33,9 +38,17 @@ protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Acanthus acanthus = (Acanthus) getApplication(); + + Intent intent = getIntent(); + AnimationJson animationJson = (AnimationJson) intent.getSerializableExtra("AnimationJsonData"); + Animation currentAnimation = acanthus.getCurrentAnimation(); setContentView(R.layout.activity_animation_detail); + //作成者のuidとnameを保存 + ArrayList editorsUid = (ArrayList) animationJson.getEditorIds(); + ArrayList editorsNames = (ArrayList) animationJson.getEditorNames(); + //文字入力テスト EditText editText = findViewById(R.id.edit_text); TextView wordText = findViewById(R.id.word_text); @@ -49,6 +62,15 @@ wordText17.setText(currentAnimation.getCreatedDate().toString()); TextView wordText18 = findViewById(R.id.textView18); + Button editor1Button = findViewById(R.id.button_editor1); + Button editor2Button = findViewById(R.id.button_editor2); + editor1Button.setOnClickListener(new View.OnClickListener(){ + @Override + public void onClick(View v){ + + } + }); + wordButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { @@ -64,13 +86,27 @@ Button returnButton = findViewById(R.id.return_button); returnButton.setOnClickListener(v -> finish()); - //作成者のページに移動(今は仮でアニメーション画面へ) - Button buttonEditor1 = findViewById(R.id.button_editor1); - buttonEditor1.setOnClickListener((View v) -> { - Intent intent = new Intent(AnimationDetailActivity.this, AnimationActivity.class); - startActivity(intent); - } - ); + //作成者のページに移動 + editor1Button.setOnClickListener(new View.OnClickListener(){ + @Override + public void onClick(View v){ + Intent intent = new Intent(getApplication(), UserPageActivity.class); + intent.putExtra("UID", editorsUid.get(0)); + intent.putExtra("NAME", editorsNames.get(0)); + startActivity(intent); + + } + }); + editor2Button.setOnClickListener(new View.OnClickListener(){ + @Override + public void onClick(View v){ + Intent intent = new Intent(getApplication(), UserPageActivity.class); + intent.putExtra("UID", editorsUid.get(1)); + intent.putExtra("NAME", editorsNames.get(1)); + startActivity(intent); + + } + }); /* //作成者のページに移動(今は仮でアニメーション画面へ) Button buttonEditor2 = findViewById(R.id.button_editor2); diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/animation_detail/AnimationDetailViewModel.java b/app/src/main/java/org/ntlab/acanthus_client/views/animation_detail/AnimationDetailViewModel.java index 71bc703..254040f 100644 --- a/app/src/main/java/org/ntlab/acanthus_client/views/animation_detail/AnimationDetailViewModel.java +++ b/app/src/main/java/org/ntlab/acanthus_client/views/animation_detail/AnimationDetailViewModel.java @@ -1,17 +1,60 @@ package org.ntlab.acanthus_client.views.animation_detail; +import android.util.Log; + import androidx.lifecycle.ViewModel; import org.ntlab.acanthus_client.Acanthus; +import org.ntlab.acanthus_client.entities.Animation; +import org.ntlab.acanthus_client.entities.Editor; +import org.ntlab.acanthus_client.entities.EditorJson; import org.ntlab.acanthus_client.entities.Stroke; +import org.ntlab.acanthus_client.resources.gallery.EditorsRest; +import org.ntlab.acanthus_client.resources.gallery.GalleryRest; import org.ntlab.acanthus_client.resources.gallery.StrokesRest; +import org.ntlab.acanthus_client.views.animation.AnimationViewModel; +import java.util.ArrayList; import java.util.Collection; import retrofit2.Call; +import retrofit2.Callback; +import retrofit2.Response; import retrofit2.Retrofit; +import retrofit2.converter.jackson.JacksonConverterFactory; public class AnimationDetailViewModel { private Retrofit retrofit; private Acanthus acanthus; + +// public AnimationDetailViewModel(){} +// +// public ArrayList getEditors(Integer aid){ +// +// ArrayList uidList = new ArrayList<>(); +// Retrofit retrofit = new Retrofit.Builder() +// .baseUrl("http://nitta-lab-www.is.konan-u.ac.jp/acanthus/") +// .addConverterFactory(JacksonConverterFactory.create()) +// .build(); +// final EditorsRest editorsRest = retrofit.create(EditorsRest.class); +// Call call = editorsRest.getEditors(aid); +// call.enqueue(new Callback() { +// @Override +// public void onResponse(Call call, Response response) { +// if(response.isSuccessful()){ +// EditorJson editorJson = response.body(); +// +// } +// } +// +// @Override +// public void onFailure(Call call, Throwable t) { +// Log.d("aa", t.toString()); +// +// } +// }); +// +// return uidList; +// } + } diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/userpage/UserPageActivity.java b/app/src/main/java/org/ntlab/acanthus_client/views/userpage/UserPageActivity.java index e0bba96..8bc5636 100644 --- a/app/src/main/java/org/ntlab/acanthus_client/views/userpage/UserPageActivity.java +++ b/app/src/main/java/org/ntlab/acanthus_client/views/userpage/UserPageActivity.java @@ -35,13 +35,13 @@ userPageViewModel = new ViewModelProvider(this).get(UserPageViewModel.class); acanthus = (Acanthus) getApplication(); - Integer loginUid = 1; -// Integer loginUid = acanthus.getPreferenceUid(); - String loginToken = "abc0"; -// String loginToken = acanthus.getPreferenceToken(); +// Integer loginUid = 1; + Integer loginUid = acanthus.getPreferenceUid(); +// String loginToken = "abc0"; + String loginToken = acanthus.getPreferenceToken(); Intent intent = getIntent(); //FollowListActivity,FollowerListActivityからそれぞれuidをもらう -// Integer uid = intent.getIntExtra("UID", 0); - Integer uid = 2; + Integer uid = intent.getIntExtra("UID", 0); +// Integer uid = 2; String uname = intent.getStringExtra("NAME"); TextView userNameText = findViewById(R.id.userNameText); diff --git a/app/src/main/res/layout/activity_animation.xml b/app/src/main/res/layout/activity_animation.xml index c325be8..bc38433 100644 --- a/app/src/main/res/layout/activity_animation.xml +++ b/app/src/main/res/layout/activity_animation.xml @@ -97,13 +97,27 @@ + app:layout_constraintTop_toTopOf="parent" + app:layout_constraintVertical_bias="0.947"> +