Skip to content
This repository has been archived by the owner on Jun 27, 2023. It is now read-only.

Commit

Permalink
Adding layouts for stats page, landscape.
Browse files Browse the repository at this point in the history
- Related to issue #3
  • Loading branch information
milosmns committed May 23, 2016
1 parent 5e0737f commit 1ace896
Show file tree
Hide file tree
Showing 15 changed files with 340 additions and 58 deletions.
2 changes: 1 addition & 1 deletion app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ android {

minSdkVersion 14
targetSdkVersion 23
versionCode 8
versionCode 9
versionName "2.0.0"

testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
Expand Down
1 change: 0 additions & 1 deletion app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,6 @@
android:label="@string/activity_stats_title"
android:launchMode="singleTask"
android:parentActivityName=".MainActivity"
android:screenOrientation="portrait"
tools:ignore="UnusedAttribute">
<meta-data
android:name="android.support.PARENT_ACTIVITY"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,8 @@ public void onGenerateProgress(@FloatRange(from = 0.0f, to = 1.0f) float progres
if (person.getImage() != null) {
mContactPhotoView.setImageBitmap(person.getImage());
} else {
int drawable = AVATARS[(int) Math.round(Math.random() * AVATARS.length)];
int randomIndex = (int) Math.round(Math.random() * (AVATARS.length - 1));
int drawable = AVATARS[randomIndex];
mContactPhotoView.setImageResource(drawable);
}
}
Expand All @@ -163,7 +164,7 @@ public void onGenerateProgress(@FloatRange(from = 0.0f, to = 1.0f) float progres
}

// initially views are hidden, so update visibilities only once here
if (mProgressBar.getVisibility() != View.VISIBLE) {
if (mContactInfoView.getVisibility() != View.VISIBLE) {
mProgressBar.setVisibility(View.VISIBLE);
mContactInfoView.setVisibility(View.VISIBLE);
mCurrentCountView.setVisibility(View.VISIBLE);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@ protected void onCreate(Bundle savedInstanceState) {

// prepare the toolbar with title coloring
Toolbar toolbar = (Toolbar) findViewById(R.id.stats_toolbar);
// noinspection ConstantConditions
toolbar.setTitleTextColor(Color.WHITE);
}

Expand Down Expand Up @@ -92,7 +93,7 @@ public void onServiceConnected(ComponentName name, IBinder service) {
if (!serviceApi.isForceStopped() && (stats.requested == 0 || stats.generated < stats.requested)) {
mCheckDeviceView.setVisibility(View.VISIBLE);
} else {
mCheckDeviceView.setVisibility(View.INVISIBLE);
mCheckDeviceView.setVisibility(View.GONE);
}

String requested = String.valueOf(stats.requested);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,8 @@ private void showNotification() {
Intent stopIntent = new Intent(this, GeneratorService.class);
stopIntent.setAction(ServiceApi.STOP_GENERATING_ACTION);
PendingIntent stopPendingIntent = PendingIntent.getService(this, 0, stopIntent, PendingIntent.FLAG_UPDATE_CURRENT);
NotificationCompat.Action action = new NotificationCompat.Action(android.R.drawable.ic_menu_close_clear_cancel, getString(R.string.progress_stop), stopPendingIntent);
NotificationCompat.Action action = new NotificationCompat.Action(android.R.drawable.ic_menu_close_clear_cancel,
getString(R.string.progress_stop), stopPendingIntent);
mBuilder.addAction(action);

Intent resultIntent = new Intent(this, ProgressActivity.class);
Expand Down Expand Up @@ -226,7 +227,8 @@ public boolean isDeleting() {
}

@Override
public void onGenerateProgress(@FloatRange(from = 0.0f, to = 1.0f) float progress, @IntRange(from = 0) int iStep, @IntRange(from = 0) int generated) {
public void onGenerateProgress(@FloatRange(from = 0.0f, to = 1.0f) float progress, @IntRange(from = 0) int iStep,
@IntRange(from = 0) int generated) {
mBuilder.setProgress(mHowMany, iStep, false);
mBuilder.setContentInfo(getCurrentPercentage(progress));
mNotificationManager.notify(NOTIFICATION_ID, mBuilder.build());
Expand Down
1 change: 1 addition & 0 deletions app/src/main/res/layout-land/activity_main.xml
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
android:gravity="center"
android:maxWidth="280dp"
android:text="@string/how_many_contacts"
android:textColor="@color/primary"
android:textSize="24sp" />

<LinearLayout
Expand Down
5 changes: 2 additions & 3 deletions app/src/main/res/layout-land/activity_progress.xml
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@
android:background="?attr/colorPrimary"
android:indeterminate="false"
android:progress="0"
android:visibility="gone"
android:visibility="visible"
tools:progress="30"
tools:visibility="visible" />

Expand All @@ -177,13 +177,12 @@
tools:ignore="UnusedAttribute" />

<!-- Unused views for this device size, they stay below the Toolbar -->

<FrameLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="top|center_horizontal"
android:elevation="0dp"
android:visibility="visible"
android:visibility="gone"
tools:ignore="UnusedAttribute">

<TextView
Expand Down
275 changes: 275 additions & 0 deletions app/src/main/res/layout-land/activity_stats.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,275 @@
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:animateLayoutChanges="true"
android:gravity="center_horizontal|top"
android:orientation="vertical"
tools:context="me.angrybyte.contactsgenerator.StatsActivity">

<TextView
android:id="@+id/stats_check_device"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|center_horizontal"
android:layout_marginBottom="@dimen/spacing_normal"
android:gravity="center"
android:text="@string/stat_check_device"
android:textColor="@color/accent"
android:textSize="@dimen/text_size_small"
android:textStyle="bold"
android:visibility="gone"
tools:visibility="visible" />

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="@dimen/spacing_small"
android:baselineAligned="false"
android:gravity="center"
android:orientation="horizontal">

<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical">

<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/spacing_large"
android:orientation="horizontal">

<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/spacing_huge"
android:layout_marginRight="@dimen/spacing_huge"
android:gravity="end"
android:orientation="vertical">

<TextView
android:id="@+id/stats_generated_count"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAllCaps="true"
android:textColor="@color/primary_lighter"
android:textSize="@dimen/text_size_wow"
android:textStyle="bold"
tools:text="320" />

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/stat_total_generated"
android:textAllCaps="true"
android:textColor="@color/primary_lighter"
android:textSize="@dimen/text_size_large" />
</LinearLayout>

<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="start"
android:orientation="vertical">

<TextView
android:id="@+id/stats_requested_count"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAllCaps="true"
android:textColor="@color/primary"
android:textSize="@dimen/text_size_wow"
android:textStyle="bold"
tools:text="400" />

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/stat_total_requested"
android:textAllCaps="true"
android:textColor="@color/primary"
android:textSize="@dimen/text_size_large" />
</LinearLayout>
</LinearLayout>


<TextView
android:id="@+id/stats_longest_generated_contact_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:text="@string/stat_longest_contact"
android:textAllCaps="true"
android:textColor="@color/primary"
android:textSize="@dimen/text_size_large"
android:textStyle="bold"
android:visibility="gone"
tools:visibility="visible" />

<TextView
android:id="@+id/stats_longest_generated_contact_value"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/spacing_large"
android:gravity="center"
android:textColor="@color/primary"
android:textSize="@dimen/text_size_large"
android:visibility="gone"
tools:text="Martha Jones (2.9s)"
tools:visibility="visible" />

<TextView
android:id="@+id/stats_shortest_generated_contact_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:text="@string/stat_shortest_contacts"
android:textAllCaps="true"
android:textColor="@color/primary"
android:textSize="@dimen/text_size_large"
android:textStyle="bold"
android:visibility="gone"
tools:visibility="visible" />

<TextView
android:id="@+id/stats_shortest_generated_contact_value"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_horizontal|top"
android:padding="2dp"
android:textColor="@color/primary"
android:textSize="@dimen/text_size_large"
android:visibility="gone"
tools:text="Captain Jack Harkness (2.0s)"
tools:visibility="visible" />

</LinearLayout>

<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical">


<TextView
android:id="@+id/stats_generated_total_time_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:text="@string/stat_total_time"
android:textAllCaps="true"
android:textColor="@color/primary"
android:textSize="@dimen/text_size_large"
android:textStyle="bold" />

<TextView
android:id="@+id/stats_generated_total_time_value"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/spacing_large"
android:gravity="center"
android:textColor="@color/primary"
android:textSize="@dimen/text_size_large"
tools:text="62.3s" />

<TextView
android:id="@+id/stats_generated_average_time_label"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:text="@string/stat_average_time"
android:textAllCaps="true"
android:textColor="@color/primary"
android:textSize="@dimen/text_size_large"
android:textStyle="bold" />

<TextView
android:id="@+id/stats_generated_average_time_value"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/spacing_large"
android:gravity="center"
android:textColor="@color/primary"
android:textSize="@dimen/text_size_large"
tools:text="2.3s" />

<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/spacing_large"
android:layout_marginStart="@dimen/spacing_large"
android:gravity="center"
android:orientation="horizontal">

<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/spacing_large"
android:layout_marginRight="@dimen/spacing_large"
android:gravity="end"
android:orientation="vertical">

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="end"
android:text="@string/stat_males"
android:textAllCaps="true"
android:textColor="@color/primary"
android:textSize="@dimen/text_size_large"
android:textStyle="bold" />

<TextView
android:id="@+id/stats_generated_males"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/primary"
android:textSize="@dimen/text_size_large"
tools:text="100" />
</LinearLayout>

<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="start"
android:orientation="vertical">

<TextView
android:layout_width="100dp"
android:layout_height="wrap_content"
android:text="@string/stat_females"
android:textAllCaps="true"
android:textColor="@color/primary"
android:textSize="@dimen/text_size_large"
android:textStyle="bold" />

<TextView
android:id="@+id/stats_generated_females"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/primary"
android:textSize="@dimen/text_size_large"
tools:text="220" />
</LinearLayout>
</LinearLayout>


</LinearLayout>

</LinearLayout>

<android.support.v7.widget.Toolbar
android:id="@+id/stats_toolbar"
style="@style/ContactsTheme.MainAppBarTheme"
android:layout_marginBottom="@dimen/spacing_large"
app:title="@string/stat_title" />

</FrameLayout>
1 change: 1 addition & 0 deletions app/src/main/res/layout-sw600dp-land/activity_main.xml
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@
android:gravity="center"
android:maxWidth="340dp"
android:text="@string/how_many_contacts"
android:textColor="@color/primary"
android:textSize="24sp" />

<LinearLayout
Expand Down
1 change: 1 addition & 0 deletions app/src/main/res/layout-sw600dp/activity_main.xml
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@
android:gravity="center"
android:maxWidth="340dp"
android:text="@string/how_many_contacts"
android:textColor="@color/primary"
android:textSize="24sp" />

<LinearLayout
Expand Down
Loading

0 comments on commit 1ace896

Please sign in to comment.