Redesign App details layout

This commit is contained in:
Mr. Dragon
2018-01-21 02:39:59 +05:30
parent ea05de084f
commit 0210ccc9b0
45 changed files with 1087 additions and 723 deletions

View File

@@ -4,6 +4,7 @@ import android.content.Intent;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
import com.github.yeriomin.yalpstore.DetailsActivity;
@@ -24,7 +25,7 @@ public class BackToPlayStore extends Abstract {
if (!isPlayStoreInstalled() || !app.isInPlayStore()) {
return;
}
TextView toPlayStore = (TextView) activity.findViewById(R.id.to_play_store);
ImageView toPlayStore = (ImageView) activity.findViewById(R.id.to_play_store);
toPlayStore.setVisibility(View.VISIBLE);
toPlayStore.setOnClickListener(new View.OnClickListener() {
@Override

View File

@@ -2,6 +2,7 @@ package com.github.yeriomin.yalpstore;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.widget.CardView;
import android.view.ContextMenu;
import android.view.Menu;
import android.view.View;
@@ -23,10 +24,12 @@ public class InstalledAppsActivity extends AppListActivity {
setTitle(R.string.activity_title_updates_and_other_apps);
Button button = findViewById(R.id.main_button);
TextView textView = findViewById(R.id.main_button_txt);
CardView cardView = findViewById(R.id.list_card);
button.setEnabled(true);
textView.setEnabled(true);
button.setVisibility(View.VISIBLE);
textView.setVisibility(View.VISIBLE);
cardView.setVisibility(View.VISIBLE);
button.setText(R.string.list_check_updates);
textView.setText(R.string.list_check_updates_txt);
button.setOnClickListener(new View.OnClickListener() {

View File

@@ -6,6 +6,7 @@ import android.net.Uri;
import android.os.Build;
import android.util.Log;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
import com.github.yeriomin.yalpstore.DetailsActivity;
@@ -23,7 +24,7 @@ public class SystemAppPage extends Abstract {
if (!app.isInstalled()) {
return;
}
TextView systemAppInfo = (TextView) activity.findViewById(R.id.system_app_info);
ImageView systemAppInfo = (ImageView) activity.findViewById(R.id.system_app_info);
systemAppInfo.setVisibility(View.VISIBLE);
systemAppInfo.setOnClickListener(new View.OnClickListener() {
@Override

View File

@@ -4,7 +4,9 @@ import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.support.v7.widget.CardView;
import android.text.TextUtils;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

View File

@@ -38,13 +38,13 @@ public abstract class Abstract {
boolean isExpanded = viewContainer.getVisibility() == View.VISIBLE;
if (isExpanded) {
viewContainer.setVisibility(View.GONE);
((TextView) v).setCompoundDrawablesWithIntrinsicBounds(R.drawable.ic_expand_more, 0, 0, 0);
((TextView) v).setCompoundDrawablesWithIntrinsicBounds(0,0, R.drawable.ic_expand_more,0);
} else {
if (null != l) {
l.onClick(v);
}
viewContainer.setVisibility(View.VISIBLE);
((TextView) v).setCompoundDrawablesWithIntrinsicBounds(R.drawable.ic_expand_less, 0, 0, 0);
((TextView) v).setCompoundDrawablesWithIntrinsicBounds(0,0, R.drawable.ic_expand_less,0);
}
}
});

View File

@@ -6,6 +6,7 @@ import android.text.TextUtils;
import android.util.TypedValue;
import android.view.Gravity;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
@@ -54,10 +55,10 @@ public class AppLists extends Abstract {
}
private void addAppsByThisDeveloper() {
TextView textView = activity.findViewById(R.id.apps_by_same_developer);
textView.setText(activity.getString(R.string.apps_by, app.getDeveloperName()));
textView.setVisibility(View.VISIBLE);
textView.setOnClickListener(new View.OnClickListener() {
ImageView imageView = activity.findViewById(R.id.apps_by_same_developer);
//textView.setText(activity.getString(R.string.apps_by, app.getDeveloperName()));
imageView.setVisibility(View.VISIBLE);
imageView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(activity, SearchActivity.class);

View File

@@ -45,6 +45,7 @@ public class Beta extends Abstract {
setText(R.id.beta_message, app.isTestingProgramOptedIn() ? R.string.testing_program_section_opted_in_message : R.string.testing_program_section_opted_out_message);
setText(R.id.beta_subscribe_button, app.isTestingProgramOptedIn() ? R.string.testing_program_opt_out : R.string.testing_program_opt_in);
setText(R.id.beta_email, app.getTestingProgramEmail());
activity.findViewById(R.id.beta_card).setVisibility(View.VISIBLE);
activity.findViewById(R.id.beta_feedback).setVisibility(app.isTestingProgramOptedIn() ? View.VISIBLE : View.GONE);
activity.findViewById(R.id.beta_subscribe_button).setOnClickListener(new BetaOnClickListener((TextView) activity.findViewById(R.id.beta_message), app));
activity.findViewById(R.id.beta_submit_button).setOnClickListener(new View.OnClickListener() {

View File

@@ -32,7 +32,7 @@ public class DownloadOptions extends Abstract {
@Override
public void draw() {
final ImageButton more = activity.findViewById(R.id.more);
final ImageButton more = activity.findViewById(R.id.icon);
if (null == more) {
return;
}

View File

@@ -49,7 +49,11 @@ public class GeneralDetails extends Abstract {
}
private void drawGeneralDetails(App app) {
activity.findViewById(R.id.general_card).setVisibility(View.VISIBLE);
activity.findViewById(R.id.general_details).setVisibility(View.VISIBLE);
activity.findViewById(R.id.app_detail).setVisibility(View.VISIBLE);
activity.findViewById(R.id.divider_top).setVisibility(View.VISIBLE);
activity.findViewById(R.id.divider_bottom).setVisibility(View.VISIBLE);
setText(R.id.installs, R.string.details_installs, Util.addSiPrefix(app.getInstalls()));
if (app.isEarlyAccess()) {
setText(R.id.rating, R.string.early_access);
@@ -87,8 +91,8 @@ public class GeneralDetails extends Abstract {
} else {
activity.findViewById(R.id.changes_upper).setVisibility(View.VISIBLE);
setText(R.id.changes_upper, Html.fromHtml(changes).toString());
initExpandableGroup(R.id.changes_header, R.id.changes_container);
activity.findViewById(R.id.changes_header).performClick();
activity.findViewById(R.id.changes_header).setVisibility(View.VISIBLE);
activity.findViewById(R.id.changes_container).setVisibility(View.VISIBLE);
}
}
@@ -168,7 +172,7 @@ public class GeneralDetails extends Abstract {
}
setText(R.id.permissions, TextUtils.join("\n", localizedPermissions));
if (!app.isInPlayStore()) {
activity.findViewById(R.id.permissions_header).performClick();
//activity.findViewById(R.id.permissions_header).performClick();
}
}
}

View File

@@ -47,6 +47,7 @@ public class Review extends Abstract {
getTask(true).execute();
}
});
activity.findViewById(R.id.reviews_card).setVisibility(View.VISIBLE);
initReviewListControls();
setText(R.id.average_rating, R.string.details_rating, app.getRating().getAverage());

View File

@@ -20,11 +20,9 @@ public class Screenshot extends Abstract {
@Override
public void draw() {
if (app.getScreenshotUrls().size() > 0) {
activity.findViewById(R.id.screenshots_header).setVisibility(View.VISIBLE);
drawGallery();
initExpandableGroup(R.id.screenshots_header, R.id.screenshots_container);
} else {
activity.findViewById(R.id.screenshots_header).setVisibility(View.GONE);
return;
}
}
@@ -32,7 +30,7 @@ public class Screenshot extends Abstract {
Gallery gallery = ((Gallery) activity.findViewById(R.id.screenshots_gallery));
int screenWidth = activity.getWindowManager().getDefaultDisplay().getWidth();
gallery.setAdapter(new ImageAdapter(activity, app.getScreenshotUrls(), screenWidth));
gallery.setSpacing(10);
gallery.setSpacing(15);
gallery.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {

View File

@@ -2,6 +2,7 @@ package com.github.yeriomin.yalpstore.fragment.details;
import android.content.Intent;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
import com.github.yeriomin.yalpstore.DetailsActivity;
@@ -18,7 +19,7 @@ public class Share extends Abstract {
@Override
public void draw() {
TextView share = (TextView) activity.findViewById(R.id.share);
ImageView share = (ImageView) activity.findViewById(R.id.share);
share.setOnClickListener(new View.OnClickListener() {
@Override

View File

@@ -78,6 +78,7 @@ public class ForegroundUpdatableAppsTask extends UpdatableAppsTask implements Cl
textView.setText(R.string.list_update_all_txt);
button.setVisibility(enable ? View.VISIBLE : View.GONE);
textView.setVisibility(enable ? View.VISIBLE : View.GONE);
activity.findViewById(R.id.list_card).setVisibility(View.VISIBLE);
if (((YalpStoreApplication) activity.getApplication()).isBackgroundUpdating()) {
button.setEnabled(false);
button.setText(R.string.list_updating);

View File

@@ -0,0 +1,5 @@
<vector android:autoMirrored="true" android:height="36dp"
android:viewportHeight="24.0" android:viewportWidth="24.0"
android:width="36dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#FFF" android:pathData="M5,9.5L7.5,14H2.5L5,9.5M3,4H7V8H3V4M5,20A2,2 0,0 0,7 18A2,2 0,0 0,5 16A2,2 0,0 0,3 18A2,2 0,0 0,5 20M9,5V7H21V5H9M9,19H21V17H9V19M9,13H21V11H9V13Z"/>
</vector>

View File

@@ -0,0 +1,5 @@
<vector android:autoMirrored="true" android:height="36dp"
android:viewportHeight="24.0" android:viewportWidth="24.0"
android:width="36dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#FFF" android:pathData="M14.6,16.6L19.2,12L14.6,7.4L16,6L22,12L16,18L14.6,16.6M9.4,16.6L4.8,12L9.4,7.4L8,6L2,12L8,18L9.4,16.6Z"/>
</vector>

View File

@@ -0,0 +1,5 @@
<vector android:autoMirrored="true" android:height="36dp"
android:viewportHeight="24.0" android:viewportWidth="24.0"
android:width="36dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#FFF" android:pathData="M11,4H13V16L18.5,10.5L19.92,11.92L12,19.84L4.08,11.92L5.5,10.5L11,16V4Z"/>
</vector>

View File

@@ -0,0 +1,5 @@
<vector android:autoMirrored="true" android:height="36dp"
android:viewportHeight="24.0" android:viewportWidth="24.0"
android:width="36dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#FFF" android:pathData="M7.41,8.58L12,13.17L16.59,8.58L18,10L12,16L6,10L7.41,8.58Z"/>
</vector>

View File

@@ -0,0 +1,5 @@
<vector android:autoMirrored="true" android:height="36dp"
android:viewportHeight="24.0" android:viewportWidth="24.0"
android:width="36dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#FFF" android:pathData="M3,20.5V3.5C3,2.91 3.34,2.39 3.84,2.15L13.69,12L3.84,21.85C3.34,21.6 3,21.09 3,20.5M16.81,15.12L6.05,21.34L14.54,12.85L16.81,15.12M20.16,10.81C20.5,11.08 20.75,11.5 20.75,12C20.75,12.5 20.53,12.9 20.18,13.18L17.89,14.5L15.39,12L17.89,9.5L20.16,10.81M6.05,2.66L16.81,8.88L14.54,11.15L6.05,2.66Z"/>
</vector>

View File

@@ -0,0 +1,5 @@
<vector android:autoMirrored="true" android:height="36dp"
android:viewportHeight="24.0" android:viewportWidth="24.0"
android:width="36dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#FFF" android:pathData="M8,3H18L17,5H13.74C14.22,5.58 14.58,6.26 14.79,7H18L17,9H15C14.75,11.57 12.74,13.63 10.2,13.96V14H9.5L15.5,21H13L7,14V12H9.5V12C11.26,12 12.72,10.7 12.96,9H7L8,7H12.66C12.1,5.82 10.9,5 9.5,5H7L8,3Z"/>
</vector>

View File

@@ -0,0 +1,5 @@
<vector android:autoMirrored="true" android:height="36dp"
android:viewportHeight="24.0" android:viewportWidth="24.0"
android:width="36dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#FFF" android:pathData="M12,15.4V6.1L13.71,10.13L18.09,10.5L14.77,13.39L15.76,17.67M22,9.24L14.81,8.63L12,2L9.19,8.63L2,9.24L7.45,13.97L5.82,21L12,17.27L18.18,21L16.54,13.97L22,9.24Z"/>
</vector>

View File

@@ -0,0 +1,5 @@
<vector android:autoMirrored="true" android:height="36dp"
android:viewportHeight="24.0" android:viewportWidth="24.0"
android:width="36dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#FFF" android:pathData="M3,17V19H9V17H3M3,5V7H13V5H3M13,21V19H21V17H13V15H11V21H13M7,9V11H3V13H7V15H9V9H7M21,13V11H11V13H21M15,9H17V7H21V5H17V3H15V9Z"/>
</vector>

View File

@@ -0,0 +1,5 @@
<vector android:autoMirrored="true" android:height="36dp"
android:viewportHeight="24.0" android:viewportWidth="24.0"
android:width="36dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#FFF" android:pathData="M18,16.08C17.24,16.08 16.56,16.38 16.04,16.85L8.91,12.7C8.96,12.47 9,12.24 9,12C9,11.76 8.96,11.53 8.91,11.3L15.96,7.19C16.5,7.69 17.21,8 18,8A3,3 0,0 0,21 5A3,3 0,0 0,18 2A3,3 0,0 0,15 5C15,5.24 15.04,5.47 15.09,5.7L8.04,9.81C7.5,9.31 6.79,9 6,9A3,3 0,0 0,3 12A3,3 0,0 0,6 15C6.79,15 7.5,14.69 8.04,14.19L15.16,18.34C15.11,18.55 15.08,18.77 15.08,19C15.08,20.61 16.39,21.91 18,21.91C19.61,21.91 20.92,20.61 20.92,19A2.92,2.92 0,0 0,18 16.08Z"/>
</vector>

View File

@@ -0,0 +1,5 @@
<vector android:autoMirrored="true" android:height="36dp"
android:viewportHeight="24.0" android:viewportWidth="24.0"
android:width="36dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="#FFF" android:pathData="M12,14C10.89,14 10,13.1 10,12C10,10.89 10.89,10 12,10C13.11,10 14,10.89 14,12A2,2 0,0 1,12 14M12,4A8,8 0,0 0,4 12A8,8 0,0 0,12 20A8,8 0,0 0,20 12A8,8 0,0 0,12 4Z"/>
</vector>

View File

@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<inset xmlns:android="http://schemas.android.com/apk/res/android"
android:insetLeft="4dp"
android:insetRight="4dp"
android:insetTop="8dp"
android:insetBottom="8dp">
<ripple android:color="@color/colorAccent">
<item>
<shape android:shape="rectangle"
android:tint="@color/button_bg">
<corners android:radius="3dp" />
<solid android:color="@color/white" />
</shape>
</item>
</ripple>
</inset>

View File

@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<inset xmlns:android="http://schemas.android.com/apk/res/android"
android:insetLeft="4dp"
android:insetRight="4dp"
android:insetTop="8dp"
android:insetBottom="8dp">
<ripple android:color="@color/colorPrimary">
<item>
<shape
android:shape="rectangle">
<corners android:radius="3dp" />
<stroke android:width="3px" android:color="@color/button_bg"/>
</shape>
</item>
</ripple>
</inset>

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 192 B

View File

@@ -1,9 +1,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="32dp"
android:height="32dp"
android:viewportWidth="24.0"
android:viewportHeight="24.0">
android:width="32dp"
android:height="32dp"
android:viewportWidth="24.0"
android:viewportHeight="24.0">
<path
android:fillColor="?android:textColorSecondary"
android:pathData="M12,8l-6,6 1.41,1.41L12,10.83l4.59,4.58L18,14z"/>
</vector>
</vector>

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 189 B

View File

@@ -1,9 +1,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="32dp"
android:height="32dp"
android:viewportWidth="24.0"
android:viewportHeight="24.0">
android:width="32dp"
android:height="32dp"
android:viewportWidth="24.0"
android:viewportHeight="24.0">
<path
android:fillColor="?android:textColorSecondary"
android:pathData="M16.59,8.59L12,13.17 7.41,8.59 6,10l6,6 6,-6z"/>
</vector>
</vector>

View File

@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<inset xmlns:android="http://schemas.android.com/apk/res/android"
android:inset="6dp">
<ripple android:color="@color/colorPrimary">
<item>
<shape android:shape="oval"
android:tint="@color/round_bg">
<corners android:radius="3dp" />
<solid android:color="@color/white" />
</shape>
</item>
</ripple>
</inset>

View File

@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<inset xmlns:android="http://schemas.android.com/apk/res/android"
android:inset="2dp">
<ripple android:color="@color/colorPrimary">
<item>
<shape
android:shape="oval">
<corners android:radius="3dp" />
<stroke android:width="3px" android:color="@color/button_bg"/>
</shape>
</item>
</ripple>
</inset>

View File

@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center">
<android.support.v7.widget.CardView
android:id="@+id/beta_card"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:visibility="gone"
app:cardBackgroundColor="@color/white"
app:cardCornerRadius="2dp"
app:cardElevation="2dp"
app:contentPadding="5dp">
<TextView
android:id="@+id/beta_header"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:drawableEnd="@drawable/ic_expand_more"
android:visibility="gone"
android:textColor="@color/colorPrimary"
android:gravity="center|start"
android:textSize="14sp"
android:textAllCaps="true"
android:textStyle="bold"/>
<LinearLayout
android:id="@+id/beta_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_marginTop="32dp"
android:visibility="gone">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/beta_message"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:id="@+id/beta_subscribe_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end"
android:theme="@style/Widget.AppCompat.Button.Borderless.Colored"
android:background="@drawable/button_bg"
android:textColor="@color/white"/>
<TextView
android:id="@+id/beta_email"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical|end"
android:autoLink="email"
android:gravity="center_vertical|end"
android:textAlignment="textEnd" />
</FrameLayout>
<LinearLayout
android:id="@+id/beta_feedback"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<EditText
android:id="@+id/beta_comment"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:hint="@string/testing_program_review_dialog_content_hint" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_gravity="end">
<Button
android:id="@+id/beta_submit_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/submit"
android:theme="@style/Widget.AppCompat.Button.Borderless.Colored"
android:background="@drawable/button_bg"
android:textColor="@color/white"/>
<Button
android:id="@+id/beta_delete_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/delete"
android:visibility="gone"
android:theme="@style/Widget.AppCompat.Button.Borderless.Colored"
android:background="@drawable/button_bg"
android:textColor="@color/white"/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</android.support.v7.widget.CardView>
</RelativeLayout>

View File

@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/changes_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="gone"
android:background="@color/changelog_bg">
<TextView
android:id="@+id/changes_header"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:layout_marginLeft="25dp"
android:text="@string/details_changelog"
android:textAllCaps="true"
android:textSize="14sp"
android:textStyle="bold"
android:textColor="@color/changelog_txt"
android:visibility="gone" />
<TextView
android:id="@+id/changes_upper"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:autoLink="web|email"
android:layout_marginTop="10dp"
android:layout_marginBottom="10dp"
android:layout_marginLeft="25dp"
android:layout_marginRight="25dp"
android:textIsSelectable="true"
android:visibility="gone"
android:textColor="@color/changelog_txt"
android:lineSpacingExtra="5dp"/>
</LinearLayout>

View File

@@ -0,0 +1,125 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- App Details : Type, Size, Rating -->
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/app_detail"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:visibility="gone">
<!-- Downloads -->
<LinearLayout
android:id="@+id/app_downloads"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center">
<ImageButton
android:layout_width="@dimen/icon_size"
android:layout_height="@dimen/icon_size"
android:layout_margin="5dp"
android:src="@drawable/app_downloads"
android:tint="@color/colorPrimary"
android:background="@drawable/round_bg_outine" />
<TextView
android:id="@+id/installs"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:gravity="clip_horizontal"/>
</LinearLayout>
<!-- Ratings -->
<LinearLayout
android:id="@+id/app_ratings"
android:layout_toEndOf="@id/app_downloads"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center">
<ImageButton
android:layout_width="@dimen/icon_size"
android:layout_height="@dimen/icon_size"
android:layout_margin="5dp"
android:src="@drawable/app_ratings"
android:tint="@color/colorPrimary"
android:background="@drawable/round_bg_outine"/>
<TextView
android:id="@+id/rating"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
<!-- Size -->
<LinearLayout
android:id="@+id/app_size"
android:layout_toEndOf="@id/app_ratings"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center">
<ImageButton
android:layout_width="@dimen/icon_size"
android:layout_height="@dimen/icon_size"
android:layout_margin="5dp"
android:src="@drawable/app_size"
android:tint="@color/colorPrimary"
android:background="@drawable/round_bg_outine"/>
<TextView
android:id="@+id/size"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
<!-- Category -->
<LinearLayout
android:id="@+id/app_category"
android:layout_toEndOf="@id/app_size"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center">
<ImageButton
android:layout_width="@dimen/icon_size"
android:layout_height="@dimen/icon_size"
android:layout_margin="5dp"
android:src="@drawable/app_category"
android:tint="@color/colorPrimary"
android:background="@drawable/round_bg_outine"/>
<TextView
android:id="@+id/category"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
<!-- Price -->
<LinearLayout
android:id="@+id/app_price"
android:layout_toEndOf="@id/app_category"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center">
<ImageButton
android:layout_width="@dimen/icon_size"
android:layout_height="@dimen/icon_size"
android:layout_margin="5dp"
android:src="@drawable/app_price"
android:tint="@color/colorPrimary"
android:background="@drawable/round_bg_outine"/>
<TextView
android:id="@+id/price"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
</RelativeLayout>

View File

@@ -0,0 +1,56 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center">
<android.support.v7.widget.CardView
android:id="@+id/general_card"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:visibility="gone"
app:cardBackgroundColor="@color/white"
app:cardCornerRadius="2dp"
app:cardElevation="2dp"
app:contentPadding="5dp">
<!--TextView
android:id="@+id/beta_header"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:drawableEnd="@drawable/ic_expand_more"
android:visibility="gone"
android:textColor="@color/colorPrimary"
android:gravity="center|start"
android:textSize="14sp"
android:textAllCaps="true"
android:textStyle="bold"/-->
<LinearLayout
android:id="@+id/general_details"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="visible"
android:padding="5dp">
<TextView
android:id="@+id/developer"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
<TextView
android:id="@+id/updated"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
<TextView
android:id="@+id/google_dependencies"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</LinearLayout>
</android.support.v7.widget.CardView>
</RelativeLayout>

View File

@@ -0,0 +1,64 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/changes_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/description_header"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:focusable="true"
android:gravity="center"
android:paddingTop="6dip"
android:text="@string/details_description"
android:textAllCaps="true"
android:textSize="14sp"
android:textStyle="bold"
android:textColor="@color/colorPrimary"
android:visibility="gone" />
<LinearLayout
android:id="@+id/description_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_marginTop="10dp"
android:layout_marginLeft="25dp"
android:layout_marginRight="25dp"
android:visibility="gone">
<TextView
android:id="@+id/description"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:autoLink="web|email"
android:paddingTop="6dip"
android:textIsSelectable="true"
android:textColor="@color/black"/>
<TextView
android:id="@+id/changes_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="10dip"
android:text="@string/details_changelog"
android:visibility="gone" />
<TextView
android:id="@+id/changes"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:autoLink="web|email"
android:textIsSelectable="true"
android:visibility="gone" />
<LinearLayout
android:id="@+id/offer_details"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingTop="10dip" />
</LinearLayout>
</LinearLayout>

View File

@@ -0,0 +1,45 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/changes_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<android.support.v7.widget.CardView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
app:cardBackgroundColor="@color/white"
app:cardCornerRadius="2dp"
app:cardElevation="2dp"
app:contentPadding="5dp">
<TextView
android:id="@+id/permissions_header"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:drawableEnd="@drawable/ic_expand_more"
android:text="@string/details_permissions"
android:textColor="@color/colorPrimary"
android:gravity="center|start"
android:textSize="14sp"
android:textAllCaps="true"
android:textStyle="bold"/>
<LinearLayout
android:id="@+id/permissions_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_marginTop="32dp"
android:visibility="gone">
<TextView
android:id="@+id/permissions"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:typeface="monospace"/>
</LinearLayout>
</android.support.v7.widget.CardView>
</LinearLayout>

View File

@@ -0,0 +1,214 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical">
<android.support.v7.widget.CardView
android:id="@+id/reviews_card"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
android:visibility="gone"
app:cardBackgroundColor="@color/white"
app:cardCornerRadius="2dp"
app:cardElevation="2dp"
app:contentPadding="5dp">
<TextView
android:id="@+id/reviews_header"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:drawableEnd="@drawable/ic_expand_more"
android:text="@string/details_reviews"
android:visibility="gone"
android:textColor="@color/colorPrimary"
android:gravity="center|start"
android:textSize="14sp"
android:textAllCaps="true"
android:textStyle="bold"/>
<LinearLayout
android:id="@+id/reviews_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:visibility="gone">
<FrameLayout
android:id="@+id/user_review_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:padding="6dip">
<LinearLayout
android:id="@+id/user_review_edit_delete"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end"
android:orientation="vertical"
android:visibility="gone">
<ImageView
android:id="@+id/user_review_edit"
android:layout_width="32dip"
android:layout_height="32dip"
android:contentDescription="@string/content_description_review_edit"
android:src="@drawable/ic_edit" />
<ImageView
android:id="@+id/user_review_delete"
android:layout_width="32dip"
android:layout_height="32dip"
android:contentDescription="@string/content_description_review_delete"
android:src="@drawable/ic_delete" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:orientation="vertical">
<TextView
android:id="@+id/rate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="@string/details_rate_this_app"
android:textSize="20sp" />
<RatingBar
android:id="@+id/user_stars"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:numStars="5"
android:stepSize="1" />
</LinearLayout>
<LinearLayout
android:id="@+id/user_review"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:orientation="vertical"
android:visibility="gone">
<TextView
android:id="@+id/user_title"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="14sp"
android:textStyle="bold" />
<TextView
android:id="@+id/user_comment"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="12sp" />
</LinearLayout>
</LinearLayout>
</FrameLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal">
<TextView
android:id="@+id/average_rating"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingEnd="20dp"
android:paddingLeft="20dp"
android:paddingRight="20dp"
android:paddingStart="20dp"
android:textSize="40sp" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingEnd="20dp"
android:paddingLeft="20dp"
android:paddingRight="20dp"
android:paddingStart="20dp">
<TextView
android:id="@+id/average_stars5"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/average_stars4"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/average_stars3"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/average_stars2"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/average_stars1"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingLeft="15dp"
android:paddingRight="15dp">
<ImageButton
android:id="@+id/reviews_previous"
android:layout_width="24dp"
android:layout_height="match_parent"
android:layout_gravity="center"
android:background="#0000"
android:contentDescription="@string/content_description_review_previous_page"
android:src="@drawable/ic_chevron_left"
android:visibility="invisible" />
<LinearLayout
android:id="@+id/reviews_list"
android:layout_width="0px"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical" />
<ImageButton
android:id="@+id/reviews_next"
android:layout_width="24dp"
android:layout_height="match_parent"
android:layout_gravity="center"
android:background="#0000"
android:contentDescription="@string/content_description_review_next_page"
android:src="@drawable/ic_chevron_right" />
</LinearLayout>
</LinearLayout>
</android.support.v7.widget.CardView>
</LinearLayout>

View File

@@ -1,12 +1,25 @@
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical">
<android.support.v7.widget.CardView
android:id="@+id/list_card"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="5dp"
app:cardBackgroundColor="@color/white"
app:cardCornerRadius="2dp"
app:cardElevation="2dp"
app:contentPadding="5dp"
android:visibility="gone">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" >
android:orientation="horizontal"
android:padding="5dp">
<TextView
android:id="@+id/main_button_txt"
@@ -16,30 +29,32 @@
android:layout_alignParentStart="true"
android:layout_centerVertical="true"
android:text="@string/list_update_all_txt"
android:layout_margin="15dp"
android:textSize="20dp"
android:visibility="gone" />
android:visibility="gone"
android:textColor="@color/colorPrimaryDark"/>
<Button
<android.support.v7.widget.AppCompatButton
android:id="@+id/main_button"
android:layout_width="120dp"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_margin="10dp"
android:text="@string/list_update_all"
android:textColor="@color/white"
android:textColor="@color/button_bg"
android:theme="@style/Widget.AppCompat.Button.Borderless.Colored"
android:background="@color/button_bg"
android:background="@drawable/button_bg_outine"
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_marginTop="10dp"
android:layout_margin="5dp">
android:layout_margin="5dp"
app:cardBackgroundColor="@color/white"
app:contentPadding="5dp"
app:cardCornerRadius="2dp"
app:cardElevation="2dp">
<RelativeLayout
android:id="@+id/listContainer"
@@ -61,7 +76,7 @@
<android.support.v7.widget.ListViewCompat
android:id="@android:id/list"
android:layout_width="match_parent"
android:layout_height="match_parent" />
android:layout_height="match_parent"/>
<TextView
android:id="@android:id/empty"

View File

@@ -1,658 +1,274 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<RelativeLayout
<ScrollView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:padding="6dip" >
android:layout_height="match_parent"
android:background="@color/white"
android:scrollbars="none">
<ProgressBar
android:id="@+id/progress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:indeterminate="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:visibility="gone"
android:padding="5dp" />
<ScrollView
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent" >
android:layout_height="match_parent">
<ProgressBar
android:id="@+id/progress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:indeterminate="true"
android:padding="5dp"
android:visibility="gone" />
<!-- App Icon & Name -->
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content">
android:id="@+id/main"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:layout_marginTop="5dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp">
<ImageButton
android:id="@+id/icon"
android:contentDescription="@string/content_description_app_icon"
android:src="@drawable/ic_placeholder"
android:background="@null"
android:scaleType="fitXY"
android:layout_width="@dimen/icon_size"
android:layout_height="@dimen/icon_size"
android:layout_marginRight="6dp"/>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical">
<ImageView
android:id="@+id/icon"
android:contentDescription="@string/content_description_app_icon"
android:src="@drawable/ic_placeholder"
android:layout_width="64dip"
android:layout_height="64dip"
android:layout_marginRight="6dip"
android:layout_marginEnd="6dip"
android:layout_gravity="top" />
<LinearLayout
android:orientation="vertical"
android:layout_gravity="center_vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TextView
android:id="@+id/displayName"
android:textSize="18sp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textStyle="bold" />
<TextView
android:id="@+id/packageName"
android:textSize="14sp"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/versionString"
android:textSize="14sp"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:id="@+id/general_details"
android:visibility="gone"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_gravity="center_vertical"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TextView
android:id="@+id/category"
android:paddingTop="6dip"
android:id="@+id/displayName"
android:textSize="18sp"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
android:layout_height="wrap_content"
android:textStyle="bold"
android:textColor="@color/black"/>
<TextView
android:id="@+id/developer"
android:paddingTop="6dip"
android:id="@+id/packageName"
android:textSize="14sp"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
<TableLayout
android:paddingTop="6dip"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/installs"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/rating"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/updated"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/size"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</TableRow>
<TableRow
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/price"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/contains_ads"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</TableRow>
</TableLayout>
android:layout_height="wrap_content"
android:maxLines="1"/>
<TextView
android:id="@+id/google_dependencies"
android:paddingTop="6dip"
android:id="@+id/versionString"
android:textSize="14sp"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
android:layout_height="wrap_content"
android:maxLines="1"/>
</LinearLayout>
<TextView
android:id="@+id/changes_header"
android:focusable="true"
android:visibility="gone"
android:drawableLeft="@drawable/ic_expand_more"
android:drawableStart="@drawable/ic_expand_more"
android:textSize="20sp"
android:text="@string/details_changelog"
android:gravity="center_vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="6dip" />
</LinearLayout>
<!-- Action : Download, Update, Uninstall -->
<LinearLayout
android:id="@+id/main_action"
android:layout_below="@id/main"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:layout_marginRight="10dp"
android:layout_marginLeft="10dp"
android:gravity="end"
android:orientation="horizontal" >
<LinearLayout
android:id="@+id/changes_container"
<android.support.v7.widget.AppCompatButton
android:id="@+id/uninstall"
android:layout_width="0dp"
android:layout_height="48dp"
android:layout_weight="5"
android:maxLines="1"
android:visibility="gone"
android:theme="@style/Widget.AppCompat.Button.Borderless.Colored"
android:background="@drawable/button_bg_outine"
android:text="Uninstall"
android:textColor="@color/button_bg"/>
<android.support.v7.widget.AppCompatButton
android:id="@+id/download"
android:layout_width="0dp"
android:layout_height="48dp"
android:layout_weight="5"
android:maxLines="1"
android:contentDescription="@string/content_description_download_options"
android:theme="@style/Widget.AppCompat.Button.Borderless.Colored"
android:background="@drawable/button_bg"
android:text="@string/details_download"
android:visibility="gone"
android:textColor="@color/white"/>
<ImageButton
android:id="@+id/cancel"
android:layout_width="48dp"
android:layout_height="48dp"
android:contentDescription="@string/content_description_cancel_download"
android:scaleType="centerCrop"
android:visibility="gone"
android:elevation="2dp"
android:src="@drawable/ic_cancel" />
<android.support.v7.widget.AppCompatButton
android:id="@+id/install"
android:layout_width="0dp"
android:layout_height="48dp"
android:layout_weight="5"
android:visibility="gone"
android:maxLines="1"
android:theme="@style/Widget.AppCompat.Button.Borderless.Colored"
android:background="@drawable/button_bg_outine"
android:text="@string/details_install"
android:textColor="@color/button_bg"/>
<android.support.v7.widget.AppCompatButton
android:id="@+id/run"
android:layout_width="0dp"
android:layout_height="48dp"
android:layout_weight="3"
android:visibility="gone"
android:maxLines="1"
android:theme="@style/Widget.AppCompat.Button.Borderless.Colored"
android:background="@drawable/button_bg"
android:text="@string/details_run"
android:textColor="@color/white"/>
</LinearLayout>
<TextView
android:id="@+id/contains_ads"
android:layout_below="@id/main_action"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="end"
android:layout_marginRight="15dp"/>
<View
android:id="@+id/divider_top"
android:layout_below="@id/contains_ads"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="10dp"
android:layout_marginBottom="5dp"
android:layout_marginRight="15dp"
android:layout_marginLeft="15dp"
android:background="@color/gray"
android:visibility="gone"/>
<!-- App details -->
<LinearLayout
android:id="@+id/sub_main"
android:layout_below="@id/divider_top"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_height="match_parent"
android:orientation="vertical">
<TextView
android:id="@+id/changes_upper"
android:textIsSelectable="true"
android:visibility="gone"
android:autoLink="web|email"
<!-- App Details : Type, Size, Rating -->
<include layout="@layout/app_details_inc"/>
<View
android:id="@+id/divider_bottom"
android:layout_below="@id/main_action"
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginTop="10dp"
android:layout_marginBottom="5dp"
android:layout_marginRight="15dp"
android:layout_marginLeft="15dp"
android:background="@color/gray"
android:visibility="gone"/>
<!-- Changelog -->
<include layout="@layout/app_changelog_inc"/>
<!-- Read More -->
<include layout="@layout/app_more_inc"/>
<!-- Screenshot -->
<Gallery
android:id="@+id/screenshots_gallery"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="6dip" />
</LinearLayout>
<TextView
android:id="@+id/description_header"
android:focusable="true"
android:visibility="gone"
android:drawableLeft="@drawable/ic_expand_more"
android:drawableStart="@drawable/ic_expand_more"
android:textSize="20sp"
android:text="@string/details_description"
android:gravity="center_vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="6dip" />
<LinearLayout
android:id="@+id/description_container"
android:visibility="gone"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
android:layout_margin="5dp"
android:spacing="15dp" />
<!-- Reviews -->
<include layout="@layout/app_reviews_inc"/>
<!-- Video -->
<TextView
android:id="@+id/description"
android:textIsSelectable="true"
android:autoLink="web|email"
android:id="@+id/video"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="6dip" />
<TextView
android:id="@+id/changes_title"
android:text="@string/details_changelog"
android:visibility="gone"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="10dip" />
<TextView
android:id="@+id/changes"
android:textIsSelectable="true"
android:autoLink="web|email"
android:visibility="gone"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
android:focusable="true"
android:gravity="center_vertical"
android:paddingTop="6dip"
android:text="@string/details_video"
android:textSize="20sp"
android:visibility="gone" />
<!-- Permissions -->
<include layout="@layout/app_perm_inc"/>
<!-- Beta -->
<include layout="@layout/app_beta_inc"/>
<!-- General -->
<include layout="@layout/app_gen_inc"/>
<!-- Related Apps -->
<LinearLayout
android:id="@+id/offer_details"
android:id="@+id/related_links"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:paddingTop="10dip" />
</LinearLayout>
<TextView
android:id="@+id/reviews_header"
android:focusable="true"
android:visibility="gone"
android:drawableLeft="@drawable/ic_expand_more"
android:drawableStart="@drawable/ic_expand_more"
android:textSize="20sp"
android:gravity="center_vertical"
android:text="@string/details_reviews"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="6dip" />
<LinearLayout
android:id="@+id/reviews_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="gone"
android:orientation="vertical" >
<FrameLayout
android:id="@+id/user_review_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:padding="6dip" >
<LinearLayout
android:id="@+id/user_review_edit_delete"
android:visibility="gone"
android:orientation="vertical"
android:layout_gravity="end"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<ImageView
android:id="@+id/user_review_edit"
android:contentDescription="@string/content_description_review_edit"
android:src="@drawable/ic_edit"
android:layout_width="32dip"
android:layout_height="32dip" />
<ImageView
android:id="@+id/user_review_delete"
android:contentDescription="@string/content_description_review_delete"
android:src="@drawable/ic_delete"
android:layout_width="32dip"
android:layout_height="32dip" />
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<LinearLayout
android:orientation="vertical"
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/rate"
android:text="@string/details_rate_this_app"
android:layout_gravity="center"
android:textSize="20sp"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<RatingBar
android:id="@+id/user_stars"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:stepSize="1"
android:numStars="5" />
</LinearLayout>
<LinearLayout
android:id="@+id/user_review"
android:visibility="gone"
android:orientation="vertical"
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/user_title"
android:textSize="14sp"
android:textStyle="bold"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/user_comment"
android:textSize="12sp"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
</LinearLayout>
</LinearLayout>
</FrameLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal">
<TextView
android:id="@+id/average_rating"
android:textSize="40sp"
android:paddingStart="20dp"
android:paddingLeft="20dp"
android:paddingRight="20dp"
android:paddingEnd="20dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingStart="20dp"
android:paddingLeft="20dp"
android:paddingRight="20dp"
android:paddingEnd="20dp"
android:orientation="vertical">
<TextView
android:id="@+id/average_stars5"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/average_stars4"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/average_stars3"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/average_stars2"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/average_stars1"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
android:visibility="visible">
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingLeft="15dp"
android:paddingRight="15dp"
android:orientation="horizontal">
android:layout_height="match_parent"
android:orientation="horizontal"
android:gravity="center">
<!-- Playstore link -->
<ImageButton
android:id="@+id/reviews_previous"
android:contentDescription="@string/content_description_review_previous_page"
android:src="@drawable/ic_chevron_left"
android:visibility="invisible"
android:background="#0000"
android:layout_gravity="center"
android:layout_width="24dp"
android:layout_height="match_parent" />
<LinearLayout
android:id="@+id/reviews_list"
android:layout_weight="1"
android:layout_width="0px"
android:layout_height="wrap_content"
android:orientation="vertical" />
android:id="@+id/to_play_store"
android:layout_width="@dimen/icon_size"
android:layout_height="@dimen/icon_size"
android:background="@drawable/round_bg"
android:src="@drawable/app_playstore"/>
<!-- App by same dev -->
<ImageButton
android:id="@+id/reviews_next"
android:contentDescription="@string/content_description_review_next_page"
android:src="@drawable/ic_chevron_right"
android:background="#0000"
android:layout_gravity="center"
android:layout_width="24dp"
android:layout_height="match_parent" />
android:id="@+id/apps_by_same_developer"
android:layout_width="@dimen/icon_size"
android:layout_height="@dimen/icon_size"
android:background="@drawable/round_bg"
android:src="@drawable/app_dev"
android:visibility="gone"/>
<!-- Share -->
<ImageButton
android:id="@+id/share"
android:layout_width="@dimen/icon_size"
android:layout_height="@dimen/icon_size"
android:background="@drawable/round_bg"
android:src="@drawable/app_share"/>
<!-- System detail -->
<ImageButton
android:id="@+id/system_app_info"
android:layout_width="@dimen/icon_size"
android:layout_height="@dimen/icon_size"
android:background="@drawable/round_bg"
android:src="@drawable/app_settings"/>
</LinearLayout>
</LinearLayout>
<TextView
android:id="@+id/video"
android:focusable="true"
android:drawableLeft="@drawable/ic_chevron_right"
android:drawableStart="@drawable/ic_chevron_right"
android:textSize="20sp"
android:text="@string/details_video"
android:gravity="center_vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="6dip"
android:visibility="gone" />
<TextView
android:id="@+id/screenshots_header"
android:focusable="true"
android:visibility="gone"
android:drawableLeft="@drawable/ic_expand_more"
android:drawableStart="@drawable/ic_expand_more"
android:textSize="20sp"
android:gravity="center_vertical"
android:text="@string/details_screenshots"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="6dip" />
<LinearLayout
android:id="@+id/screenshots_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="gone"
android:orientation="vertical">
<Gallery
android:id="@+id/screenshots_gallery"
android:spacing="10dp"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>
<TextView
android:id="@+id/permissions_header"
android:drawableLeft="@drawable/ic_expand_more"
android:drawableStart="@drawable/ic_expand_more"
android:textSize="20sp"
android:focusable="true"
android:gravity="center_vertical"
android:text="@string/details_permissions"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="6dip" />
<LinearLayout
android:id="@+id/permissions_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="gone"
android:orientation="vertical">
<TextView
android:id="@+id/permissions"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>
<TextView
android:id="@+id/beta_header"
android:focusable="true"
android:visibility="gone"
android:drawableLeft="@drawable/ic_expand_more"
android:drawableStart="@drawable/ic_expand_more"
android:textSize="20sp"
android:gravity="center_vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="6dip" />
<LinearLayout
android:id="@+id/beta_container"
android:visibility="gone"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:id="@+id/beta_message"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:id="@+id/beta_subscribe_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<TextView
android:id="@+id/beta_email"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:autoLink="email"
android:layout_gravity="center_vertical|end"
android:gravity="center_vertical|end"
android:textAlignment="textEnd"/>
</FrameLayout>
<LinearLayout
android:id="@+id/beta_feedback"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<EditText
android:id="@+id/beta_comment"
android:hint="@string/testing_program_review_dialog_content_hint"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
<LinearLayout
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<Button
android:id="@+id/beta_submit_button"
android:text="@string/submit"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<Button
android:id="@+id/beta_delete_button"
android:visibility="gone"
android:text="@string/delete"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:id="@+id/related_links"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="gone"
android:orientation="vertical">
</LinearLayout>
<TextView
android:id="@+id/apps_by_same_developer"
android:focusable="true"
android:drawableLeft="@drawable/ic_chevron_right"
android:drawableStart="@drawable/ic_chevron_right"
android:textSize="20sp"
android:gravity="center_vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="6dip"
android:visibility="gone" />
<TextView
android:id="@+id/to_play_store"
android:focusable="true"
android:drawableLeft="@drawable/ic_chevron_right"
android:drawableStart="@drawable/ic_chevron_right"
android:textSize="20sp"
android:text="@string/details_to_play_store"
android:gravity="center_vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="6dip"
android:visibility="gone" />
<TextView
android:id="@+id/share"
android:focusable="true"
android:drawableLeft="@drawable/ic_chevron_right"
android:drawableStart="@drawable/ic_chevron_right"
android:textSize="20sp"
android:text="@string/details_share"
android:gravity="center_vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="6dip" />
<TextView
android:id="@+id/system_app_info"
android:focusable="true"
android:drawableLeft="@drawable/ic_chevron_right"
android:drawableStart="@drawable/ic_chevron_right"
android:textSize="20sp"
android:text="@string/details_system_app_info"
android:gravity="center_vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="6dip"
android:visibility="gone" />
</LinearLayout>
</ScrollView>
</RelativeLayout>
</RelativeLayout>
</ScrollView>
<ProgressBar
android:id="@+id/download_progress"
@@ -665,69 +281,4 @@
android:indeterminate="false"
android:visibility="gone"
style="@android:style/Widget.ProgressBar.Horizontal" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="end"
android:orientation="horizontal" >
<ImageButton
android:id="@+id/uninstall"
android:layout_width="48dp"
android:layout_height="48dp"
android:contentDescription="@string/details_uninstall"
android:scaleType="centerCrop"
android:visibility="gone"
android:elevation="2dp"
android:src="@drawable/ic_delete" />
<Button
android:id="@+id/download"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="5"
android:visibility="gone"
android:maxLines="1"
android:text="@string/details_download" />
<ImageButton
android:id="@+id/cancel"
android:layout_width="48dp"
android:layout_height="48dp"
android:contentDescription="@string/content_description_cancel_download"
android:scaleType="centerCrop"
android:visibility="gone"
android:elevation="2dp"
android:src="@drawable/ic_cancel" />
<Button
android:id="@+id/install"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="5"
android:visibility="gone"
android:maxLines="1"
android:text="@string/details_install" />
<Button
android:id="@+id/run"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="3"
android:visibility="gone"
android:maxLines="1"
android:text="@string/details_run" />
<ImageButton
android:id="@+id/more"
android:layout_width="48dp"
android:layout_height="48dp"
android:contentDescription="@string/content_description_download_options"
android:scaleType="centerCrop"
android:elevation="2dp"
android:src="@drawable/ic_more"/>
</LinearLayout>
</LinearLayout>

View File

@@ -2,7 +2,16 @@
<resources>
<color name="colorPrimary">#ff1976d2</color>
<color name="colorPrimaryDark">#1565C0</color>
<color name="colorAccent">#00E676</color>
<color name="colorAccent">#448AFF</color>
<color name="white">#FFFFFF</color>
<color name="button_bg">#448AFF</color>
<color name="black">#000000</color>
<color name="button_bg">#1565C0</color>
<color name="round_bg">#1565C0</color>
<color name="changelog_txt">#1565C0</color>
<color name="changelog_bg">#E3F2FD</color>
<color name="gray">#BDBDBD</color>
<color name="darkgray">#616161</color>
<color name="colorText">#121212</color>
<color name="colorTextPrimary">#212121</color>
<color name="colorTextSecondary">#535353</color>
</resources>

View File

@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<dimen name="icon_size">64dp</dimen>
</resources>

View File

@@ -19,7 +19,7 @@
<string name="email_subject_feedback" translatable="false">"%1$s %2$s User Feedback"</string>
<string name="email_subject_crash_report" translatable="false">"%1$s %2$s Crash Report"</string>
<string name="sent_from_device_definition_dialog" translatable="false">"Sent from device definition request dialog"</string>
<string name="details_installs" translatable="false">"%1$s"</string>
<string name="details_rating" translatable="false">"%1$.1f"</string>
<string name="details_installs" translatable="false">"%1$s"</string>
<string name="details_rating" translatable="false">"%1$.1f"</string>
<string name="details_rating_specific" translatable="false">"%1$d★ %2$d"</string>
</resources>

View File

@@ -84,20 +84,20 @@
<string name="error_token_dispenser_problem">Could not log in without an account. Try using your own account.</string>
<string name="error_invalid_device_definition">Device definition rejected.</string>
<string name="error_could_not_download">Could not download.</string>
<string name="details_category">"Category: %1$s"</string>
<string name="details_developer">"Developer: %1$s"</string>
<string name="details_updated">"Updated %1$s"</string>
<string name="details_size">"Apk size %1$s"</string>
<string name="details_description">Description:</string>
<string name="details_changelog">What\'s new:</string>
<string name="details_category">"%1$s"</string>
<string name="details_developer">"Developer : %1$s"</string>
<string name="details_updated">"Updated : %1$s"</string>
<string name="details_size">"%1$s"</string>
<string name="details_description">Read more</string>
<string name="details_changelog">Changelog</string>
<string name="details_screenshots">Screenshots:</string>
<string name="details_reviews">Reviews:</string>
<string name="details_reviews">Reviews</string>
<string name="details_rate_this_app">Rate this app:</string>
<string name="details_you_rated_this_app">You rated this app:</string>
<string name="details_permissions">Permissions:</string>
<string name="details_versionName">"Version %1$s"</string>
<string name="details_versionName_updatable">"Version %1$s → %2$s"</string>
<string name="details_run">Run</string>
<string name="details_permissions">App permissions</string>
<string name="details_versionName">"%1$s"</string>
<string name="details_versionName_updatable">"%1$s → %2$s"</string>
<string name="details_run">Open</string>
<string name="details_download">Download</string>
<string name="details_install">Install</string>
<string name="details_uninstall">Uninstall</string>
@@ -115,7 +115,7 @@
<string name="details_video">Video</string>
<string name="details_share">Share</string>
<string name="details_signature_mismatch">The new version is signed with a different key to the old one. To install the new version, the old one must be uninstalled first. Please do this and try again. (Note that uninstalling will erase any internal data stored by the application)</string>
<string name="details_depends_on">"Depends on: %1$s"</string>
<string name="details_depends_on">"Depends on : %1$s"</string>
<string name="details_no_dependencies">nothing</string>
<string name="details_contains_ads">Contains ads</string>
<string name="details_no_ads">No ads</string>

View File

@@ -4,5 +4,8 @@
<item name="android:colorPrimary">@color/colorPrimary</item>
<item name="android:colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="android:colorAccent">@color/colorAccent</item>
<item name="android:colorButtonNormal">@color/button_bg</item>
<item name="android:textColor">@color/black</item>
<item name="android:textColorPrimary">@color/black</item>
</style>
</resources>