diff --git a/app/src/main/java/com/example/tampopo_client/views/MainActivity.java b/app/src/main/java/com/example/tampopo_client/views/MainActivity.java index 5fb81c2..14bf304 100644 --- a/app/src/main/java/com/example/tampopo_client/views/MainActivity.java +++ b/app/src/main/java/com/example/tampopo_client/views/MainActivity.java @@ -10,6 +10,7 @@ import android.widget.GridView; import android.widget.ImageButton; import android.widget.LinearLayout; +import android.widget.TextView; import androidx.activity.EdgeToEdge; import androidx.appcompat.app.AlertDialog; @@ -17,19 +18,26 @@ import androidx.core.graphics.Insets; import androidx.core.view.ViewCompat; import androidx.core.view.WindowInsetsCompat; +import androidx.lifecycle.MutableLiveData; +import androidx.lifecycle.Observer; import androidx.lifecycle.ViewModelProvider; import com.example.tampopo_client.R; import com.example.tampopo_client.Tampopo; +import com.example.tampopo_client.models.Activity; import com.example.tampopo_client.viewmodels.ActivityViewModel; import com.example.tampopo_client.viewmodels.UserViewModel; +import java.util.List; +import java.util.Map; + public class MainActivity extends AppCompatActivity { private EditText editMessage; private ImageButton sendButton; private GridView wordGroup; private LinearLayout messageList; + //private List friendIds = List.of(); //アクティビティの選択肢 private String[] words = {"ひまnow", "あそぼ!", "そろそろ会いたない〜?", "勉強なう", "電話しよ~", "お風呂入ってくる~", "今暇だよー!", "いそがしい~!!"}; private Button openDialogButton; @@ -64,6 +72,25 @@ tampopo = (Tampopo) getApplication(); +// MutableLiveData>friendUserIdsLiveDate = activityViewModel.getFriendUserIdsLiveData(); +// friendUserIdsLiveDate.observe(this, new Observer>() { +// @Override +// public void onChanged(List friendLive) { +// if(friendLive != null){ +// friendIds = friendLive; +// updateActivityView(activityViewModel.getActivitiesLiveData().getValue()); +// } +// } +// }); + + MutableLiveData> activitiesLiveData = activityViewModel.getActivitiesLiveData(); + activitiesLiveData.observe(this, new Observer>() { + @Override + public void onChanged(Map activities) { + updateActivityView(activities); + } + }); + //メイン画面から通知一覧画面への遷移 // ImageButton notificationButton = (ImageButton)findViewById(R.id.notification); // notificationButton.setOnClickListener(new View.OnClickListener() { @@ -87,7 +114,6 @@ // ボタンを押すとダイアログ表示(トリガー用) openDialogButton = findViewById(R.id.openDialogButton); openDialogButton.setOnClickListener(v -> showInputDialog()); - } private void showInputDialog() { @@ -145,4 +171,27 @@ dialog.show(); } + private void updateActivityView(Map activities) { + TextView comment = this.findViewById(R.id.friend01_comment); + for (Activity ac: activities.values()) { + comment.setText(ac.getText()); + } + +// if (activities == null || friendIds == null) return; +// +// messageList.removeAllViews(); // 表示をリセット +// +// for (String userId : friendIds) { +// Activity activity = activities.get(userId); +// if (activity != null) { +// TextView textView = new TextView(this); +// textView.setText(activity.getText()); +// textView.setTextSize(16); +// textView.setPadding(16, 16, 16, 16); +// // 必要に応じてユーザー名なども表示できる +// messageList.addView(textView); +// } +// } + } + } \ No newline at end of file