|
@@ -94,6 +94,7 @@ public class RoomInfoActivity extends BaseActivity {
|
|
|
private boolean mXmppBind;
|
|
private boolean mXmppBind;
|
|
|
private CoreService mCoreService;
|
|
private CoreService mCoreService;
|
|
|
public final static String ROOM_NAME = "ROOMNAME";
|
|
public final static String ROOM_NAME = "ROOMNAME";
|
|
|
|
|
+ private Button btnExit;
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
|
|
|
|
@@ -155,7 +156,7 @@ public class RoomInfoActivity extends BaseActivity {
|
|
|
loadMembers();
|
|
loadMembers();
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
|
-
|
|
|
|
|
|
|
+ btnExit = (Button) findViewById(R.id.btn_exit);
|
|
|
mGridView.setOnTouchListener(new View.OnTouchListener() {
|
|
mGridView.setOnTouchListener(new View.OnTouchListener() {
|
|
|
@Override
|
|
@Override
|
|
|
public boolean onTouch(View v, MotionEvent event) {
|
|
public boolean onTouch(View v, MotionEvent event) {
|
|
@@ -299,7 +300,7 @@ public class RoomInfoActivity extends BaseActivity {
|
|
|
mMembers.add(0, my);
|
|
mMembers.add(0, my);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
- mAdapter = new GridViewAdapter();
|
|
|
|
|
|
|
+ mAdapter = new GridViewAdapter(mMembers, mucRoom.getUserId());
|
|
|
mGridView.setAdapter(mAdapter);
|
|
mGridView.setAdapter(mAdapter);
|
|
|
if (TextUtils.isEmpty(myNickName)) {
|
|
if (TextUtils.isEmpty(myNickName)) {
|
|
|
mNickNameTv.setText(MyApplication.getInstance().mLoginUser.getNickName());
|
|
mNickNameTv.setText(MyApplication.getInstance().mLoginUser.getNickName());
|
|
@@ -308,13 +309,24 @@ public class RoomInfoActivity extends BaseActivity {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
if (mucRoom.getUserId().equals(mLoginUserId)) {// 我是创建者
|
|
if (mucRoom.getUserId().equals(mLoginUserId)) {// 我是创建者
|
|
|
|
|
+ if (btnExit == null) {
|
|
|
|
|
+ btnExit = (Button) findViewById(R.id.btn_exit);
|
|
|
|
|
+ }
|
|
|
|
|
+ Log.i("gongpengming", "mucRoom.getUserId()=" + mucRoom.getUserId());
|
|
|
add_minus_count = 2;
|
|
add_minus_count = 2;
|
|
|
|
|
+ btnExit.setText("删除商务群");
|
|
|
findViewById(R.id.room_name_arrow_img).setVisibility(View.VISIBLE);
|
|
findViewById(R.id.room_name_arrow_img).setVisibility(View.VISIBLE);
|
|
|
findViewById(R.id.room_desc_arrow_img).setVisibility(View.VISIBLE);
|
|
findViewById(R.id.room_desc_arrow_img).setVisibility(View.VISIBLE);
|
|
|
findViewById(R.id.banned_voice_rl).setVisibility(View.VISIBLE);
|
|
findViewById(R.id.banned_voice_rl).setVisibility(View.VISIBLE);
|
|
|
- findViewById(R.id.banned_delete_rl).setVisibility(View.VISIBLE);
|
|
|
|
|
- findViewById(R.id.exit_room_rl).setVisibility(View.GONE);
|
|
|
|
|
-
|
|
|
|
|
|
|
+ findViewById(R.id.banned_delete_rl).setVisibility(View.GONE);
|
|
|
|
|
+ findViewById(R.id.exit_room_rl).setVisibility(View.VISIBLE);
|
|
|
|
|
+ btnExit.setOnClickListener(new View.OnClickListener() {
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public void onClick(View view) {
|
|
|
|
|
+ Log.i("gongpengming", "删除商务群");
|
|
|
|
|
+ deleteRoom(mRoom);
|
|
|
|
|
+ }
|
|
|
|
|
+ });
|
|
|
findViewById(R.id.room_name_rl).setOnClickListener(new View.OnClickListener() {
|
|
findViewById(R.id.room_name_rl).setOnClickListener(new View.OnClickListener() {
|
|
|
@Override
|
|
@Override
|
|
|
public void onClick(View v) {
|
|
public void onClick(View v) {
|
|
@@ -341,6 +353,7 @@ public class RoomInfoActivity extends BaseActivity {
|
|
|
findViewById(R.id.banned_delete_rl).setOnClickListener(new View.OnClickListener() {
|
|
findViewById(R.id.banned_delete_rl).setOnClickListener(new View.OnClickListener() {
|
|
|
@Override
|
|
@Override
|
|
|
public void onClick(View v) {//删除群房间
|
|
public void onClick(View v) {//删除群房间
|
|
|
|
|
+ Log.i("gongpengming", "删除群房间");
|
|
|
deleteRoom(mRoom);
|
|
deleteRoom(mRoom);
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
@@ -358,6 +371,10 @@ public class RoomInfoActivity extends BaseActivity {
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
|
} else {
|
|
} else {
|
|
|
|
|
+ if (btnExit == null) {
|
|
|
|
|
+ btnExit = (Button) findViewById(R.id.btn_exit);
|
|
|
|
|
+ }
|
|
|
|
|
+ btnExit.setText("退出商务群");
|
|
|
add_minus_count = 1;
|
|
add_minus_count = 1;
|
|
|
findViewById(R.id.room_name_arrow_img).setVisibility(View.INVISIBLE);
|
|
findViewById(R.id.room_name_arrow_img).setVisibility(View.INVISIBLE);
|
|
|
findViewById(R.id.room_desc_arrow_img).setVisibility(View.INVISIBLE);
|
|
findViewById(R.id.room_desc_arrow_img).setVisibility(View.INVISIBLE);
|
|
@@ -368,12 +385,8 @@ public class RoomInfoActivity extends BaseActivity {
|
|
|
findViewById(R.id.room_desc_rl).setOnClickListener(null);
|
|
findViewById(R.id.room_desc_rl).setOnClickListener(null);
|
|
|
findViewById(R.id.banned_voice_rl).setOnClickListener(null);
|
|
findViewById(R.id.banned_voice_rl).setOnClickListener(null);
|
|
|
findViewById(R.id.banned_delete_rl).setOnClickListener(null);
|
|
findViewById(R.id.banned_delete_rl).setOnClickListener(null);
|
|
|
- findViewById(R.id.exit_room_rl).setOnClickListener(new View.OnClickListener() {
|
|
|
|
|
- @Override
|
|
|
|
|
- public void onClick(View v) {//成员退出房间
|
|
|
|
|
- deleteRoom(mRoom);
|
|
|
|
|
- }
|
|
|
|
|
- });
|
|
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
findViewById(R.id.shield_chat_rl).setOnClickListener(new View.OnClickListener() {
|
|
findViewById(R.id.shield_chat_rl).setOnClickListener(new View.OnClickListener() {
|
|
|
@Override
|
|
@Override
|
|
|
public void onClick(View v) {//屏蔽群消息
|
|
public void onClick(View v) {//屏蔽群消息
|
|
@@ -387,7 +400,13 @@ public class RoomInfoActivity extends BaseActivity {
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
|
|
+ findViewById(R.id.exit_room_rl).setOnClickListener(new View.OnClickListener() {
|
|
|
|
|
+ @Override
|
|
|
|
|
+ public void onClick(View v) {//成员退出房间
|
|
|
|
|
+ Log.i("gongpengming", "成员退出房间");
|
|
|
|
|
+ deleteRoom(mRoom);
|
|
|
|
|
+ }
|
|
|
|
|
+ });
|
|
|
findViewById(R.id.nick_name_rl).setOnClickListener(new View.OnClickListener() {
|
|
findViewById(R.id.nick_name_rl).setOnClickListener(new View.OnClickListener() {
|
|
|
@Override
|
|
@Override
|
|
|
public void onClick(View v) {
|
|
public void onClick(View v) {
|
|
@@ -510,11 +529,32 @@ public class RoomInfoActivity extends BaseActivity {
|
|
|
private boolean doDel = false;
|
|
private boolean doDel = false;
|
|
|
private boolean doBannedVoice = false;
|
|
private boolean doBannedVoice = false;
|
|
|
|
|
|
|
|
|
|
+
|
|
|
private class GridViewAdapter extends BaseAdapter {
|
|
private class GridViewAdapter extends BaseAdapter {
|
|
|
|
|
|
|
|
|
|
+ private final List<MucRoomMember> members;
|
|
|
|
|
+
|
|
|
|
|
+ public GridViewAdapter(List<MucRoomMember> members, String id) {
|
|
|
|
|
+ boolean isf = false;
|
|
|
|
|
+ this.members = new ArrayList<>();
|
|
|
|
|
+ for (int i = 0; i < members.size(); i++) {
|
|
|
|
|
+ if (members.get(i).getUserId().equals(id)) {//如果是群主
|
|
|
|
|
+ if (!isf) {
|
|
|
|
|
+ isf = true;
|
|
|
|
|
+ } else {
|
|
|
|
|
+ members.remove(i);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ members.add(new MucRoomMember());
|
|
|
|
|
+ if (id.equals(mLoginUserId))
|
|
|
|
|
+ members.add(new MucRoomMember());
|
|
|
|
|
+ this.members.addAll(members);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
@Override
|
|
@Override
|
|
|
public int getCount() {
|
|
public int getCount() {
|
|
|
- return mMembers.size();
|
|
|
|
|
|
|
+ return members.size();
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -534,16 +574,17 @@ public class RoomInfoActivity extends BaseActivity {
|
|
|
TextView tvName = (TextView) view.findViewById(R.id.tv_name);
|
|
TextView tvName = (TextView) view.findViewById(R.id.tv_name);
|
|
|
Button button = (Button) view.findViewById(R.id.btn_del);
|
|
Button button = (Button) view.findViewById(R.id.btn_del);
|
|
|
|
|
|
|
|
- if (position > mMembers.size() - (add_minus_count + 1)) {
|
|
|
|
|
|
|
+
|
|
|
|
|
+ if (position > members.size() - (add_minus_count + 1)) {
|
|
|
if (add_minus_count == 1) {
|
|
if (add_minus_count == 1) {
|
|
|
- if (position == mMembers.size() - 1) {
|
|
|
|
|
|
|
+ if (position == members.size() - 1) {
|
|
|
imageView.setBackgroundResource(R.drawable.bg_room_info_add_btn);
|
|
imageView.setBackgroundResource(R.drawable.bg_room_info_add_btn);
|
|
|
}
|
|
}
|
|
|
} else {
|
|
} else {
|
|
|
- if (position == mMembers.size() - 2) {
|
|
|
|
|
|
|
+ if (position == members.size() - 2) {
|
|
|
imageView.setBackgroundResource(R.drawable.bg_room_info_add_btn);
|
|
imageView.setBackgroundResource(R.drawable.bg_room_info_add_btn);
|
|
|
}
|
|
}
|
|
|
- if (position == mMembers.size() - 1) {
|
|
|
|
|
|
|
+ if (position == members.size() - 1) {
|
|
|
imageView.setBackgroundResource(R.drawable.bg_room_info_minus_btn);
|
|
imageView.setBackgroundResource(R.drawable.bg_room_info_minus_btn);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -556,8 +597,8 @@ public class RoomInfoActivity extends BaseActivity {
|
|
|
}
|
|
}
|
|
|
} else {
|
|
} else {
|
|
|
// String id=ChatJID.getID(mOccupants.get(position).getJid());
|
|
// String id=ChatJID.getID(mOccupants.get(position).getJid());
|
|
|
- tvName.setText(mMembers.get(position).getNickName());
|
|
|
|
|
- AvatarHelper.getInstance().displayAvatar(mMembers.get(position).getUserId(), imageView, true);
|
|
|
|
|
|
|
+ tvName.setText(members.get(position).getNickName());
|
|
|
|
|
+ AvatarHelper.getInstance().displayAvatar(members.get(position).getUserId(), imageView, true);
|
|
|
if (doDel | doBannedVoice) {
|
|
if (doDel | doBannedVoice) {
|
|
|
button.setVisibility(View.VISIBLE);
|
|
button.setVisibility(View.VISIBLE);
|
|
|
} else {
|
|
} else {
|
|
@@ -573,17 +614,17 @@ public class RoomInfoActivity extends BaseActivity {
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
if (doDel) {
|
|
if (doDel) {
|
|
|
- if (mMembers.get(position).getUserId().equals(mLoginUserId)) {
|
|
|
|
|
|
|
+ if (members.get(position).getUserId().equals(mLoginUserId)) {
|
|
|
ToastUtil.showToast(mContext, R.string.can_not_remove_self);
|
|
ToastUtil.showToast(mContext, R.string.can_not_remove_self);
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
- deleteMember(position, mMembers.get(position).getUserId());
|
|
|
|
|
|
|
+ deleteMember(position, members.get(position).getUserId());
|
|
|
} else if (doBannedVoice) {
|
|
} else if (doBannedVoice) {
|
|
|
- if (mMembers.get(position).getUserId().equals(mLoginUserId)) {
|
|
|
|
|
|
|
+ if (members.get(position).getUserId().equals(mLoginUserId)) {
|
|
|
ToastUtil.showToast(mContext, R.string.can_not_banned_self);
|
|
ToastUtil.showToast(mContext, R.string.can_not_banned_self);
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
- showBanndedVoiceDialog(position, mMembers.get(position).getUserId());
|
|
|
|
|
|
|
+ showBanndedVoiceDialog(position, members.get(position).getUserId());
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
}
|
|
}
|