Show avatar and display name

This commit is contained in:
seven332 committed 2016-03-10 02:13:21 +08:00
1 parent 8650565829
commit f511ea7f46
10 files changed
+110 -4

No files matched your search

@@ -28,11 +28,13 @@ import android.support.annotation.StringRes;
import android.support.design.widget.NavigationView;
import android.support.design.widget.Snackbar;
import android.support.v4.widget.DrawerLayout;
import android.text.TextUtils;
import android.util.Log;
import android.view.Gravity;
import android.view.MenuItem;
import android.view.View;
import android.widget.FrameLayout;
import android.widget.TextView;
import android.widget.Toast;
import com.hippo.ehviewer.R;
@@ -49,15 +51,16 @@ import com.hippo.ehviewer.ui.scene.GalleryDetailScene;
import com.hippo.ehviewer.ui.scene.GalleryInfoScene;
import com.hippo.ehviewer.ui.scene.GalleryListScene;
import com.hippo.ehviewer.ui.scene.GalleryPreviewsScene;
import com.hippo.ehviewer.ui.scene.SignInScene;
import com.hippo.ehviewer.ui.scene.ProgressScene;
import com.hippo.ehviewer.ui.scene.QuickSearchScene;
import com.hippo.ehviewer.ui.scene.SignInScene;
import com.hippo.ehviewer.ui.scene.WarningScene;
import com.hippo.ehviewer.ui.scene.WebViewLoginScene;
import com.hippo.scene.Announcer;
import com.hippo.scene.SceneFragment;
import com.hippo.scene.StageActivity;
import com.hippo.util.PermissionRequester;
import com.hippo.widget.LoadImageView;
import com.hippo.yorozuya.ViewUtils;
public final class MainActivity extends StageActivity
@@ -231,6 +234,22 @@ public final class MainActivity extends StageActivity
mDrawerLayout = (DrawerLayout) ViewUtils.$$(this, R.id.draw_view);
mNavView = (NavigationView) ViewUtils.$$(this, R.id.nav_view);
mRightDrawer = (FrameLayout) ViewUtils.$$(this, R.id.right_drawer);
View headerLayout = mNavView.getHeaderView(0);
LoadImageView avatarView = (LoadImageView) ViewUtils.$$(headerLayout, R.id.avatar);
TextView displayNameView = (TextView) ViewUtils.$$(headerLayout, R.id.display_name);
String avatarUrl = Settings.getAvatar();
if (TextUtils.isEmpty(avatarUrl)) {
avatarView.load(R.drawable.default_avatar);
} else {
avatarView.load(avatarUrl, avatarUrl);
}
String displayName = Settings.getDisplayName();
if (TextUtils.isEmpty(displayName)) {
displayName = getString(R.string.default_display_name);
}
displayNameView.setText(displayName);
if (mNavView != null) {
mNavView.setNavigationItemSelectedListener(this);
@@ -19,9 +19,9 @@ package com.hippo.widget;
import android.content.Context;
import android.content.res.TypedArray;
import android.graphics.drawable.Drawable;
import android.support.v7.widget.AppCompatImageView;
import android.util.AttributeSet;
import android.view.View;
import android.widget.ImageView;
import com.hippo.ehviewer.R;
import com.hippo.yorozuya.MathUtils;
@@ -29,7 +29,7 @@ import com.hippo.yorozuya.MathUtils;
/**
* aspect is width / height
*/
public class FixedAspectImageView extends ImageView {
public class FixedAspectImageView extends AppCompatImageView {
private static final String TAG = FixedAspectImageView.class.getSimpleName();
@@ -22,6 +22,7 @@ import android.graphics.Color;
import android.graphics.drawable.ColorDrawable;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.TransitionDrawable;
import android.support.annotation.DrawableRes;
import android.support.annotation.NonNull;
import android.util.AttributeSet;
import android.view.View;
@@ -93,7 +94,9 @@ public class LoadImageView extends FixedAspectImageView implements Unikery<Image
}
a.recycle();
mConaco = EhApplication.getConaco(context);
if (!isInEditMode()) {
mConaco = EhApplication.getConaco(context);
}
}
@Override
@@ -179,6 +182,16 @@ public class LoadImageView extends FixedAspectImageView implements Unikery<Image
mConaco.load(builder);
}
public void load(Drawable drawable) {
unload();
setImageDrawable(drawable);
}
public void load(@DrawableRes int id) {
unload();
setImageResource(id);
}
public void unload() {
mConaco.cancel(this);
mKey = null;
Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 57 KiB

After

Width:  |  Height:  |  Size: 51 KiB

@@ -0,0 +1,49 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
~ Copyright 2016 Hippo Seven
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<vector
xmlns:android="http://schemas.android.com/apk/res/android"
android:height="64dp"
android:width="64dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:fillColor="@color/teal_500"
android:pathData="M0,12a12,12 0 1,0 24,0a12,12 0 1,0 -24,0"/>
<path
android:fillColor="@android:color/black"
android:pathData="M16.5,9.9L16.1,9.6L19.1,5.9C19.2,5.8,19.4,5.8,19.5,5.9L19.5,5.9C19.6,6,19.6,6.2,19.5,6.3L16.5,9.9Z"/>
<path
android:fillColor="@android:color/black"
android:pathData="M9.1,8.8L8.6,9.1L6.2,5C6.1,4.9,6.2,4.7,6.3,4.6L6.3,4.6C6.4,4.5,6.6,4.6,6.7,4.7L9.1,8.8Z"/>
<path
android:fillColor="@android:color/white"
android:pathData="M1.8,14.6L22.1,16.4C21.4,11.3,17.6,7.9,12.6,7.5C7.8,7,3.4,9.7,1.8,14.6Z"/>
<path
android:fillColor="@android:color/black"
android:pathData="M15.4,11.9a1.1,1.1 0 1,0 2.2,0a1.1,1.1 0 1,0 -2.2,0"/>
<path
android:fillColor="@android:color/black"
android:pathData="M7.1,11.2a1.1,1.1 0 1,0 2.2,0a1.1,1.1 0 1,0 -2.2,0"/>
</vector>
@@ -28,4 +28,27 @@
android:scaleType="centerCrop"
android:contentDescription="@null"/>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.hippo.widget.LoadImageView
android:id="@+id/avatar"
android:layout_width="64dp"
android:layout_height="64dp"
android:layout_centerVertical="true"
android:layout_marginLeft="@dimen/keyline_margin"/>
<TextView
android:id="@+id/display_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@id/avatar"
android:layout_toRightOf="@id/avatar"
android:layout_marginLeft="12dp"
android:layout_marginBottom="12dp"
android:textColor="@android:color/black"/>
</RelativeLayout>
</FrameLayout>
+2
View File
@@ -50,6 +50,8 @@
<string name="display_name">Display name</string>
<string name="display_name_is_empty">Display name is empty</string>
<string name="default_display_name">Little Hippo</string>
<string name="error_status_code_400" translatable="false">Bad Request</string>
<string name="error_status_code_401" translatable="false">Unauthorized</string>
<string name="error_status_code_402" translatable="false">Payment Required</string>