migrate to CardView in contact and muc details

This commit is contained in:
Christian Schneppe 2018-03-16 21:15:47 +01:00
parent 4d5754ac5d
commit f26cab3b03
5 changed files with 377 additions and 375 deletions

View file

@ -62,6 +62,7 @@ dependencies {
implementation "com.android.support:support-emoji-appcompat:$supportLibVersion"
implementation "com.android.support:exifinterface:$supportLibVersion"
implementation "com.android.support:design:$supportLibVersion"
implementation "com.android.support:cardview-v7:$supportLibVersion"
implementation 'com.github.bumptech.glide:glide:3.8.0'
implementation 'com.github.chrisbanes:PhotoView:2.0.0'
implementation 'com.github.rtoshiro.fullscreenvideoview:fullscreenvideoview:1.1.3'

View file

@ -1,6 +1,5 @@
package de.pixart.messenger.ui;
import android.support.v7.app.AlertDialog;
import android.app.PendingIntent;
import android.content.Context;
import android.content.DialogInterface;
@ -9,6 +8,8 @@ import android.content.IntentSender.SendIntentException;
import android.graphics.PorterDuff;
import android.os.Bundle;
import android.support.v7.app.ActionBar;
import android.support.v7.app.AlertDialog;
import android.support.v7.widget.CardView;
import android.util.Log;
import android.view.ContextMenu;
import android.view.LayoutInflater;
@ -83,10 +84,10 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers
private TextView mFullJid;
private TextView mAccountJid;
private LinearLayout membersView;
private LinearLayout mMoreDetails;
private CardView mMoreDetails;
private RelativeLayout mMucSettings;
private TextView mConferenceType;
private LinearLayout mConferenceInfoTable;
private CardView mConferenceInfoTable;
private TextView mConferenceInfoMam;
private TextView mNotifyStatusText;
private ImageButton mChangeConferenceSettingsButton;
@ -298,25 +299,15 @@ public class ConferenceDetailsActivity extends XmppActivity implements OnConvers
getSupportActionBar().setHomeButtonEnabled(true);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
}
mEditNickButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
quickEdit(mConversation.getMucOptions().getActualNick(),
0,
new OnValueEdited() {
@Override
public String onValueEdited(String value) {
if (xmppConnectionService.renameInMuc(mConversation, value, renameCallback)) {
return null;
} else {
return getString(R.string.invalid_username);
}
}
});
}
});
mEditNickButton.setOnClickListener(v -> quickEdit(mConversation.getMucOptions().getActualNick(),
0,
value -> {
if (xmppConnectionService.renameInMuc(mConversation, value, renameCallback)) {
return null;
} else {
return getString(R.string.invalid_username);
}
}));
this.mAdvancedMode = getPreferences().getBoolean("advanced_muc_mode", false);
this.mConferenceInfoTable = findViewById(R.id.muc_info_more);
this.mConferenceInfoTable.setVisibility(this.mAdvancedMode ? View.VISIBLE : View.GONE);

View file

@ -14,6 +14,7 @@ import android.provider.ContactsContract.Contacts;
import android.provider.ContactsContract.Intents;
import android.support.v4.content.ContextCompat;
import android.support.v7.app.ActionBar;
import android.support.v7.widget.CardView;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
@ -123,7 +124,7 @@ public class ContactDetailsActivity extends OmemoActivity implements OnAccountUp
private Button mShowInactiveDevicesButton;
private QuickContactBadge badge;
private LinearLayout keys;
private LinearLayout keysWrapper;
private CardView keysWrapper;
private FlowLayout tags;
private boolean showDynamicTags = false;
private boolean showLastSeen = false;
@ -292,12 +293,9 @@ public class ContactDetailsActivity extends OmemoActivity implements OnAccountUp
getSupportActionBar().setHomeButtonEnabled(true);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
}
mShowInactiveDevicesButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
showInactiveOmemo = !showInactiveOmemo;
populateView();
}
mShowInactiveDevicesButton.setOnClickListener(v -> {
showInactiveOmemo = !showInactiveOmemo;
populateView();
});
this.mNotifyStatusButton = findViewById(R.id.notification_status_button);
this.mNotifyStatusButton.setOnClickListener(this.mNotifyStatusClickListener);

View file

@ -10,213 +10,216 @@
android:layout_height="wrap_content"
android:orientation="vertical">
<RelativeLayout
android:layout_width="fill_parent"
<android.support.v7.widget.CardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/activity_vertical_margin"
android:layout_marginLeft="@dimen/activity_horizontal_margin"
android:layout_marginRight="@dimen/activity_horizontal_margin"
android:layout_marginTop="@dimen/activity_vertical_margin"
android:background="@drawable/infocard_border"
android:padding="@dimen/infocard_padding">
android:layout_marginTop="@dimen/activity_vertical_margin">
<android.support.text.emoji.widget.EmojiTextView
android:id="@+id/contact_display_name"
android:layout_width="wrap_content"
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="@string/contact"
android:textColor="@color/black87"
android:textIsSelectable="false"
android:textSize="?attr/TextSizeHeadline"
android:textStyle="bold"
android:paddingBottom="5dp"
android:textAlignment="center"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true" />
<QuickContactBadge
android:id="@+id/details_contact_badge"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:background="@drawable/message_border"
android:maxHeight="384dp"
android:maxWidth="384dp"
android:padding="1dp"
android:layout_below="@+id/contact_display_name"
android:layout_centerHorizontal="true" />
<LinearLayout
android:id="@+id/details_jidbox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_alignParentStart="true"
android:layout_below="@+id/details_contact_badge"
android:layout_marginTop="16dp"
android:orientation="vertical">
<TextView
android:id="@+id/details_contactjid"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="@string/account_settings_example_jabber_id"
android:textColor="@color/black87"
android:textIsSelectable="true"
android:textSize="?attr/TextSizeHeadline"
android:textStyle="bold"
android:visibility="gone" />
<com.wefika.flowlayout.FlowLayout
android:id="@+id/tags"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="4dp"
android:layout_marginLeft="-2dp"
android:layout_marginTop="4dp"
android:orientation="horizontal">
</com.wefika.flowlayout.FlowLayout>
<TextView
android:id="@+id/details_lastseen"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:textColor="@color/black54"
android:textSize="?attr/TextSizeBody"
android:layout_marginBottom="4dp"
android:layout_marginTop="4dp" />
android:padding="@dimen/infocard_padding">
<android.support.text.emoji.widget.EmojiTextView
android:id="@+id/status_message"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="4dp"
android:gravity="center_horizontal"
android:textColor="@color/black54"
android:textSize="?attr/TextSizeBody"
android:textStyle="italic"
android:layout_marginBottom="4dp" />
<android.support.text.emoji.widget.EmojiTextView
android:id="@+id/resource"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="4dp"
android:gravity="center_horizontal"
android:textColor="@color/black54"
android:textSize="?attr/TextSizeBody"
android:textStyle="italic"
android:layout_marginBottom="4dp" />
<Button
android:id="@+id/add_contact_button"
android:id="@+id/contact_display_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_gravity="center_horizontal"
android:text="@string/add_contact"
android:layout_marginBottom="4dp"
android:layout_marginTop="4dp" />
android:paddingBottom="5dp"
android:text="@string/contact"
android:textAlignment="center"
android:textColor="@color/black87"
android:textIsSelectable="false"
android:textSize="?attr/TextSizeHeadline"
android:textStyle="bold" />
<CheckBox
android:id="@+id/details_send_presence"
<QuickContactBadge
android:id="@+id/details_contact_badge"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_below="@+id/add_contact_button"
android:text="@string/send_presence_updates"
android:textColor="@color/black87"
android:textSize="?attr/TextSizeBody"
android:layout_marginTop="4dp" />
android:layout_below="@+id/contact_display_name"
android:layout_centerHorizontal="true"
android:adjustViewBounds="true"
android:background="@drawable/message_border"
android:maxHeight="384dp"
android:maxWidth="384dp"
android:padding="1dp"
android:scaleType="centerCrop" />
<CheckBox
android:id="@+id/details_receive_presence"
<LinearLayout
android:id="@+id/details_jidbox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_alignParentStart="true"
android:layout_below="@+id/details_send_presence"
android:text="@string/receive_presence_updates"
android:textColor="@color/black87"
android:textSize="?attr/TextSizeBody" />
android:layout_below="@+id/details_contact_badge"
android:layout_marginTop="16dp"
android:orientation="vertical">
</LinearLayout>
<TextView
android:id="@+id/details_contactjid"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="@string/account_settings_example_jabber_id"
android:textColor="?attr/color_text_primary"
android:textIsSelectable="true"
android:textSize="?attr/TextSizeHeadline"
android:textStyle="bold"
android:visibility="gone" />
<TextView
android:id="@+id/details_account"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_below="@+id/details_jidbox"
android:layout_marginTop="32dp"
android:text="@string/using_account"
android:textColor="@color/black54"
android:textSize="?attr/TextSizeInfo"
android:visibility="gone" />
</RelativeLayout>
<com.wefika.flowlayout.FlowLayout
android:id="@+id/tags"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="4dp"
android:layout_marginLeft="-2dp"
android:layout_marginTop="4dp"
android:orientation="horizontal"></com.wefika.flowlayout.FlowLayout>
<RelativeLayout
android:layout_width="fill_parent"
<TextView
android:id="@+id/details_lastseen"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="4dp"
android:layout_marginTop="4dp"
android:textColor="?attr/color_text_primary"
android:textSize="?attr/TextSizeBody" />
<android.support.text.emoji.widget.EmojiTextView
android:id="@+id/status_message"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="4dp"
android:layout_marginTop="4dp"
android:gravity="center_horizontal"
android:textColor="?attr/color_text_primary"
android:textSize="?attr/TextSizeBody"
android:textStyle="italic" />
<android.support.text.emoji.widget.EmojiTextView
android:id="@+id/resource"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="4dp"
android:layout_marginTop="4dp"
android:gravity="center_horizontal"
android:textColor="?attr/color_text_primary"
android:textSize="?attr/TextSizeBody"
android:textStyle="italic" />
<Button
android:id="@+id/add_contact_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="4dp"
android:layout_marginTop="4dp"
android:text="@string/add_contact" />
<CheckBox
android:id="@+id/details_send_presence"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_below="@+id/add_contact_button"
android:layout_marginTop="4dp"
android:text="@string/send_presence_updates"
android:textColor="?attr/color_text_primary"
android:textSize="?attr/TextSizeBody" />
<CheckBox
android:id="@+id/details_receive_presence"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_below="@+id/details_send_presence"
android:text="@string/receive_presence_updates"
android:textColor="?attr/color_text_primary"
android:textSize="?attr/TextSizeBody" />
</LinearLayout>
<TextView
android:id="@+id/details_account"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_below="@+id/details_jidbox"
android:layout_marginTop="32dp"
android:text="@string/using_account"
android:textColor="@color/black54"
android:textSize="?attr/TextSizeInfo"
android:visibility="gone" />
</RelativeLayout>
</android.support.v7.widget.CardView>
<android.support.v7.widget.CardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/activity_vertical_margin"
android:layout_marginLeft="@dimen/activity_horizontal_margin"
android:layout_marginRight="@dimen/activity_horizontal_margin"
android:layout_marginTop="@dimen/activity_vertical_margin"
android:background="@drawable/infocard_border"
android:padding="@dimen/infocard_padding">
android:layout_marginTop="@dimen/activity_vertical_margin">
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:touchscreenBlocksFocus="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" >
android:layout_alignParentStart="true"
android:background="@drawable/infocard_border"
android:padding="@dimen/infocard_padding"
android:touchscreenBlocksFocus="true">
<TextView
android:id="@+id/notification_status_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/notify_on_all_messages"
android:layout_centerVertical="true"
android:textColor="@color/black87"
android:textSize="?attr/TextSizeBody"
android:layout_alignParentLeft="true"
android:layout_toLeftOf="@+id/notification_status_button" />
android:layout_centerVertical="true"
android:layout_toLeftOf="@+id/notification_status_button"
android:text="@string/notify_on_all_messages"
android:textColor="@color/black87"
android:textSize="?attr/TextSizeBody" />
<ImageButton
android:id="@+id/notification_status_button"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_gravity="center_horizontal"
android:background="?android:selectableItemBackground"
android:padding="@dimen/image_button_padding"
android:src="@drawable/ic_notifications_grey600_24dp" />
</RelativeLayout>
</RelativeLayout>
</android.support.v7.widget.CardView>
<LinearLayout
<android.support.v7.widget.CardView
android:id="@+id/keys_wrapper"
android:layout_width="fill_parent"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/activity_vertical_margin"
android:layout_marginLeft="@dimen/activity_horizontal_margin"
android:layout_marginRight="@dimen/activity_horizontal_margin"
android:layout_marginTop="@dimen/activity_vertical_margin"
android:background="@drawable/infocard_border"
android:orientation="vertical"
android:padding="@dimen/infocard_padding">
@ -231,8 +234,7 @@
android:layout_height="wrap_content"
android:divider="?android:dividerHorizontal"
android:orientation="vertical"
android:showDividers="middle">
</LinearLayout>
android:showDividers="middle"></LinearLayout>
<Button
android:id="@+id/show_inactive_devices"
@ -244,7 +246,6 @@
android:text="@string/show_inactive_devices"
android:textColor="@color/accent" />
</LinearLayout>
</LinearLayout>
</android.support.v7.widget.CardView>
</LinearLayout>
</ScrollView>

View file

@ -11,114 +11,120 @@
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout
android:layout_width="fill_parent"
<android.support.v7.widget.CardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/activity_vertical_margin"
android:layout_marginLeft="@dimen/activity_horizontal_margin"
android:layout_marginRight="@dimen/activity_horizontal_margin"
android:layout_marginTop="@dimen/activity_vertical_margin"
android:background="@drawable/infocard_border"
android:orientation="vertical"
android:padding="@dimen/infocard_padding">
<android.support.text.emoji.widget.EmojiTextView
android:id="@+id/conference_name"
android:layout_width="wrap_content"
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="@string/conference_subject"
android:textColor="@color/black87"
android:textIsSelectable="false"
android:textSize="?attr/TextSizeHeadline"
android:textStyle="bold"
android:paddingBottom="5dp"
android:textAlignment="center"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true" />
android:orientation="vertical"
android:padding="@dimen/infocard_padding">
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/muc_settings">
<android.support.text.emoji.widget.EmojiTextView
android:id="@+id/conference_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_gravity="center_horizontal"
android:paddingBottom="5dp"
android:text="@string/conference_subject"
android:textAlignment="center"
android:textColor="@color/black87"
android:textIsSelectable="false"
android:textSize="?attr/TextSizeHeadline"
android:textStyle="bold" />
<RelativeLayout
android:id="@+id/muc_settings"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/muc_conference_type"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_toLeftOf="@+id/change_conference_button"
android:text="@string/private_conference"
android:textColor="@color/black87"
android:textSize="?attr/TextSizeBody" />
<ImageButton
android:id="@+id/change_conference_button"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_gravity="center_horizontal"
android:background="?android:selectableItemBackground"
android:padding="@dimen/image_button_padding"
android:src="?attr/icon_settings" />
</RelativeLayout>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/notification_status_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_toLeftOf="@+id/notification_status_button"
android:text="@string/notify_on_all_messages"
android:textColor="@color/black87"
android:textSize="?attr/TextSizeBody" />
<ImageButton
android:id="@+id/notification_status_button"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_gravity="center_horizontal"
android:background="?android:selectableItemBackground"
android:padding="@dimen/image_button_padding"
android:src="@drawable/ic_notifications_grey600_24dp" />
</RelativeLayout>
<TextView
android:id="@+id/muc_conference_type"
android:id="@+id/details_account"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_toLeftOf="@+id/change_conference_button"
android:text="@string/private_conference"
android:textColor="@color/black87"
android:textSize="?attr/TextSizeBody" />
<ImageButton
android:id="@+id/change_conference_button"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_gravity="center_horizontal"
android:background="?android:selectableItemBackground"
android:padding="@dimen/image_button_padding"
android:src="?attr/icon_settings" />
</RelativeLayout>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content">
android:layout_gravity="right"
android:layout_marginTop="32dp"
android:text="@string/using_account"
android:textColor="@color/black54"
android:textSize="?attr/TextSizeInfo"
android:visibility="gone" />
<TextView
android:id="@+id/notification_status_text"
android:id="@+id/muc_jabberid"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/notify_on_all_messages"
android:layout_centerVertical="true"
android:layout_marginBottom="16dp"
android:text="@string/account_settings_example_jabber_id"
android:textColor="@color/black87"
android:textSize="?attr/TextSizeBody"
android:layout_alignParentLeft="true"
android:layout_toLeftOf="@+id/notification_status_button" />
android:textIsSelectable="true"
android:textSize="?attr/TextSizeHeadline"
android:textStyle="bold"
android:visibility="gone" />
</LinearLayout>
</android.support.v7.widget.CardView>
<ImageButton
android:id="@+id/notification_status_button"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:background="?android:selectableItemBackground"
android:padding="@dimen/image_button_padding"
android:src="@drawable/ic_notifications_grey600_24dp" />
</RelativeLayout>
<TextView
android:id="@+id/details_account"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:layout_marginTop="32dp"
android:text="@string/using_account"
android:textColor="@color/black54"
android:textSize="?attr/TextSizeInfo"
android:visibility="gone" />
<TextView
android:id="@+id/muc_jabberid"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="16dp"
android:text="@string/account_settings_example_jabber_id"
android:textColor="@color/black87"
android:textSize="?attr/TextSizeHeadline"
android:textStyle="bold"
android:textIsSelectable="true"
android:visibility="gone" />
</LinearLayout>
<LinearLayout
<android.support.v7.widget.CardView
android:id="@+id/muc_more_details"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
@ -126,141 +132,146 @@
android:layout_marginLeft="@dimen/activity_horizontal_margin"
android:layout_marginRight="@dimen/activity_horizontal_margin"
android:layout_marginTop="@dimen/activity_vertical_margin"
android:background="@drawable/infocard_border"
android:orientation="vertical"
android:padding="@dimen/infocard_padding">
<RelativeLayout
android:layout_width="fill_parent"
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="32dp">
android:orientation="vertical"
android:padding="@dimen/infocard_padding">
<com.makeramen.roundedimageview.RoundedImageView
android:id="@+id/your_photo"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_alignParentEnd="false"
android:layout_alignParentLeft="true"
android:padding="1dp"
android:src="@drawable/ic_profile"
app:riv_corner_radius="36dp"
app:riv_border_width="1dp"
app:riv_border_color="@color/grey500"
android:layout_alignParentRight="false" />
<LinearLayout
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toRightOf="@+id/your_photo"
android:layout_marginBottom="32dp">
<com.makeramen.roundedimageview.RoundedImageView
android:id="@+id/your_photo"
android:layout_width="72dp"
android:layout_height="72dp"
android:layout_alignParentEnd="false"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="false"
android:padding="1dp"
android:src="@drawable/ic_profile"
app:riv_border_color="@color/grey500"
app:riv_border_width="1dp"
app:riv_corner_radius="36dp" />
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toRightOf="@+id/your_photo"
android:orientation="vertical"
android:paddingLeft="8dp">
<android.support.text.emoji.widget.EmojiTextView
android:id="@+id/muc_your_nick"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:singleLine="true"
android:textColor="@color/black87"
android:textSize="?attr/TextSizeHeadline" />
<TextView
android:id="@+id/muc_role"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:singleLine="true"
android:textColor="@color/black87"
android:textSize="?attr/TextSizeBody" />
</LinearLayout>
<ImageButton
android:id="@+id/edit_nick_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:background="?android:selectableItemBackground"
android:padding="@dimen/image_button_padding"
android:src="?attr/icon_edit_dark" />
</RelativeLayout>
<LinearLayout
android:id="@+id/muc_members"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:divider="?android:dividerHorizontal"
android:orientation="vertical"
android:paddingLeft="8dp">
android:showDividers="middle"></LinearLayout>
<android.support.text.emoji.widget.EmojiTextView
android:id="@+id/muc_your_nick"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:singleLine="true"
android:textColor="@color/black87"
android:textSize="?attr/TextSizeHeadline" />
<TextView
android:id="@+id/muc_role"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:singleLine="true"
android:textColor="@color/black87"
android:textSize="?attr/TextSizeBody" />
</LinearLayout>
<ImageButton
android:id="@+id/edit_nick_button"
<Button
android:id="@+id/invite"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:background="?android:selectableItemBackground"
android:padding="@dimen/image_button_padding"
android:src="?attr/icon_edit_dark" />
</RelativeLayout>
android:layout_gravity="center_horizontal"
android:layout_marginTop="24dp"
android:text="@string/invite_contact" />
<LinearLayout
android:id="@+id/muc_members"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:divider="?android:dividerHorizontal"
android:orientation="vertical"
android:showDividers="middle">
<Button
android:id="@+id/destroy"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="24dp"
android:text="@string/destroy_muc" />
</LinearLayout>
</android.support.v7.widget.CardView>
<Button
android:id="@+id/invite"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="24dp"
android:text="@string/invite_contact" />
<Button
android:id="@+id/destroy"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="24dp"
android:text="@string/destroy_muc" />
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
<android.support.v7.widget.CardView
android:id="@+id/muc_info_more"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/activity_vertical_margin"
android:layout_marginLeft="@dimen/activity_horizontal_margin"
android:layout_marginRight="@dimen/activity_horizontal_margin"
android:layout_marginTop="@dimen/activity_vertical_margin"
android:background="@drawable/infocard_border"
android:orientation="vertical"
android:padding="@dimen/infocard_padding"
android:id="@+id/muc_info_more"
android:shrinkColumns="0"
android:stretchColumns="1"
android:visibility="gone">
<TableLayout
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:stretchColumns="1">
android:orientation="vertical"
android:padding="@dimen/infocard_padding">
<TableRow
android:layout_width="fill_parent"
android:layout_height="match_parent">
<TableLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:stretchColumns="1">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/server_info_mam"
android:textColor="@color/black87"
android:textSize="?attr/TextSizeBody"
android:singleLine="true"
android:ellipsize="end" />
<TableRow
android:layout_width="fill_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/muc_info_mam"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:paddingLeft="4dp"
android:textColor="@color/black87"
android:textSize="?attr/TextSizeBody" />
</TableRow>
</TableLayout>
</LinearLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ellipsize="end"
android:singleLine="true"
android:text="@string/server_info_mam"
android:textColor="@color/black87"
android:textSize="?attr/TextSizeBody" />
<TextView
android:id="@+id/muc_info_mam"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:paddingLeft="4dp"
android:textColor="@color/black87"
android:textSize="?attr/TextSizeBody" />
</TableRow>
</TableLayout>
</LinearLayout>
</android.support.v7.widget.CardView>
</LinearLayout>
</ScrollView>