From c660b3e0a8c90ce80a833b5c81e042440f462738 Mon Sep 17 00:00:00 2001 From: massimiliano <massimiliano@disroot.org> Date: Sun, 25 Nov 2018 22:39:04 +0100 Subject: [PATCH] Make Status change color based on status --- .../disroot/disrootapp/ui/StateActivity.java | 29 +++++++++++++++++-- app/src/main/res/xml/changelog_master.xml | 3 ++ 2 files changed, 29 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/org/disroot/disrootapp/ui/StateActivity.java b/app/src/main/java/org/disroot/disrootapp/ui/StateActivity.java index 2289324..1036b45 100644 --- a/app/src/main/java/org/disroot/disrootapp/ui/StateActivity.java +++ b/app/src/main/java/org/disroot/disrootapp/ui/StateActivity.java @@ -2,15 +2,18 @@ package org.disroot.disrootapp.ui; import android.annotation.SuppressLint; import android.app.ProgressDialog; +import android.graphics.Color; import android.os.AsyncTask; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; import android.util.Log; import android.view.View; +import android.view.ViewGroup; import android.widget.ListAdapter; import android.widget.ListView; import android.widget.SimpleAdapter; +import android.widget.TextView; import android.widget.Toast; import org.disroot.disrootapp.R; @@ -189,14 +192,34 @@ public class StateActivity extends AppCompatActivity { if (pDialog.isShowing()) pDialog.dismiss(); - //Updating parsed JSON data into ListView - ListAdapter adapter = new SimpleAdapter( StateActivity.this, stateList, R.layout.list_item, new String[]{"name", "description", "updated_at", "status_name"}, new int[]{R.id.name, - R.id.description,R.id.updated_at, R.id.status_name}); + R.id.description,R.id.updated_at, R.id.status_name}) + + //Change Color based on Status + { + @Override + public View getView(int position, View convertView, ViewGroup parent) { + View v = super.getView(position, convertView, parent); + TextView status = v.findViewById(R.id.status_name); + String statusValue = status.getText().toString(); + switch (statusValue) { + case "Operational": + status.setTextColor(Color.GREEN); + break; + case "Major Outage": + status.setTextColor(Color.RED); + break; + default: + status.setTextColor(Color.YELLOW); + break; + } + return v; + } + }; lv.setAdapter(adapter); } } diff --git a/app/src/main/res/xml/changelog_master.xml b/app/src/main/res/xml/changelog_master.xml index ba0dd90..9535679 100644 --- a/app/src/main/res/xml/changelog_master.xml +++ b/app/src/main/res/xml/changelog_master.xml @@ -1,5 +1,8 @@ <?xml version="1.0" encoding="utf-8"?> <changelog> + <release version="1.0.2" versioncode="12" > + <change>State page is api based instead of webview</change> + </release> <release version="1.0.2" versioncode="12" > <change>Third partie cookies disabled</change> <change>Fixed French translation</change> -- GitLab