| |
---|
| | |
---|
| | |
---|
| | public class MemberRoomActivity extends AppCompatActivity { |
---|
| | |
---|
| | //RoomViewModel roomViewModel = new ViewModelProvider(this).get(RoomViewModel.class); |
---|
| | |
---|
| | //フィールド |
---|
| | ArrayList<String> viewMembers = new ArrayList<>(); |
---|
| | ArrayList<String> oldMembers = new ArrayList<>(); |
---|
| | List<Member> gMembers = new ArrayList<>(); |
---|
| | List<Member> allMembers = new ArrayList<>(); |
---|
| | String roomId = "null"; |
---|
| | String myName = "null"; |
---|
| | |
---|
| | |
---|
| |
---|
| | roomViewModel.setRid(roomId); |
---|
| | |
---|
| | ListView membersList = (ListView) findViewById(R.id.MembersList); |
---|
| | |
---|
| | BaseAdapter adapter = new MemberListAdapter(this.getApplicationContext(), R.layout.member_list_layout, viewMembers, gMembers); |
---|
| | BaseAdapter adapter = new MemberListAdapter(this.getApplicationContext(), R.layout.member_list_layout, viewMembers, allMembers); |
---|
| | membersList.setAdapter(adapter); |
---|
| | |
---|
| | //LiveData(List<Member>)への購読 |
---|
| | roomViewModel.getMembersLiveData().observe(this, new Observer<List<Member>>() { |
---|
| |
---|
| | public void onChanged(List<Member> irisMembers) { |
---|
| | |
---|
| | viewMembers.clear(); |
---|
| | irisMembers.forEach(m -> viewMembers.add(m.getNickname())); |
---|
| | gMembers = irisMembers; |
---|
| | |
---|
| | BaseAdapter adapter = new MemberListAdapter(getApplicationContext(), R.layout.member_list_layout, viewMembers, gMembers); |
---|
| | allMembers = irisMembers; |
---|
| | |
---|
| | BaseAdapter adapter = new MemberListAdapter(getApplicationContext(), R.layout.member_list_layout, viewMembers, allMembers); |
---|
| | membersList.setAdapter(adapter); |
---|
| | |
---|
| | } |
---|
| | |
---|
| |
---|
| | roomViewModel.changeBelongsAndMaster(roomId, myName,"b",false); |
---|
| | } |
---|
| | }); |
---|
| | |
---|
| | //roomIDをクリップボードにコピー、他アプリに共有 |
---|
| | copyButton.setOnClickListener(new View.OnClickListener() { |
---|
| | @Override |
---|
| | public void onClick(View v) { |
---|
| | CopyClipBoard(); |
---|
| |
---|
| | Snackbar.make(v, "コピーしました", Snackbar.LENGTH_LONG).show(); |
---|
| | } |
---|
| | }); |
---|
| | |
---|
| | //部屋の退出、最初の画面(ホーム)に戻る |
---|
| | homeButton.setOnClickListener(new View.OnClickListener() { |
---|
| | @Override |
---|
| | public void onClick(View v) { |
---|
| | |
---|
| |
---|
| | roomViewModel.start(500,(Iris)getApplication()); |
---|
| | |
---|
| | } |
---|
| | |
---|
| | //--------------------------------------------------------------- |
---|
| | //roomIDのテキストをコピーする処理 |
---|
| | public void CopyClipBoard() { |
---|
| | String copyText = roomId; // 作成したレース結果を取得 |
---|
| | |
---|
| | // クリップボードへの格納成功時は成功メッセージをトーストで表示 |
---|
| | String copyText = roomId; // 生成されたroomIDを取得 |
---|
| | |
---|
| | boolean result = SetClipData(copyText); |
---|
| | if(result) { |
---|
| | |
---|
| | } else { |
---|
| |
---|
| | ClipData.Item item = cd.getItemAt(0); |
---|
| | Intent sendIntent =new Intent(); |
---|
| | sendIntent.setAction(Intent.ACTION_SEND); |
---|
| | sendIntent.setType("text/plain"); |
---|
| | sendIntent.putExtra(sendIntent.EXTRA_TEXT, item.getText()); // メモ帳のテキスト欄、メールアプリの本文にテキストをセット |
---|
| | sendIntent.putExtra(sendIntent.EXTRA_TEXT, item.getText()); // 他アプリのテキストをセット |
---|
| | startActivity(sendIntent); // 共有メニューを開く |
---|
| | } |
---|
| | } |
---|
| | |
---|
| | //--------------------------------------------------------------- |
---|
| | |
---|
| | //--------------------------------------------------------------- |
---|
| | //ホームボタンを押したときの処理 |
---|
| | private void homeButton(RoomViewModel roomViewModel){ |
---|
| | String strTitle = "ホーム画面に戻ってよろしいですか?"; |
---|
| | String strMessage = "退出することになりますよ"; |
---|
| | |
---|
| | AlertDialog.Builder builder; |
---|
| | builder = new AlertDialog.Builder(this); |
---|
| | builder.setMessage(strMessage); |
---|
| | builder.setTitle(strTitle); |
---|
| | builder.setPositiveButton("ok", new DialogInterface.OnClickListener() { |
---|
| | builder.setPositiveButton("OK", new DialogInterface.OnClickListener() { |
---|
| | @Override |
---|
| | public void onClick(DialogInterface dialog, int which) { |
---|
| | roomViewModel.deleteMember(roomId , myName); |
---|
| | Intent intent = new Intent(MemberRoomActivity.this,MainActivity.class); |
---|
| |
---|
| | builder.create(); |
---|
| | builder.show(); |
---|
| | } |
---|
| | |
---|
| | //--------------------------------------------------------------- |
---|
| | //オーナーが部屋を退出し、強制的に部屋が削除される処理 |
---|
| | private void roomDeleted(RoomViewModel roomViewModel){ |
---|
| | String strTitle = "オーナーが退出しました"; |
---|
| | String strMessage = "強制的に部屋を削除します"; |
---|
| | |
---|
| |
---|
| | |
No description provided.
コードの見やすさを改善しました。
2dbae1d
intomaster
fromimpro1027
on 27 Oct 2022