--- /dev/null
+package com.acmetensortoys.ctfwstimer;
+
+import android.content.res.Resources;
+import android.os.Build;
+import android.text.Html;
+import android.text.Spanned;
+
+public class AndroidResourceUtils {
+ public static Spanned htmlFromStrResId(Resources rs, int id, Object... args) {
+ if (Build.VERSION.SDK_INT >= 24) {
+ return Html.fromHtml(String.format(rs.getString(id), args), 0);
+ } else {
+ return Html.fromHtml(String.format(rs.getString(id), args));
+ }
+ }
+}
});
}
- private Spanned htmlFromStrResId(int id, Object... args) {
- if (Build.VERSION.SDK_INT >= 24) {
- return Html.fromHtml(String.format(mAct.getResources().getString(id), args), 0);
- } else {
- return Html.fromHtml(String.format(mAct.getResources().getString(id), args));
- }
- }
-
private void doSetSidesText(final CtFwSGameStateManager gs) {
final TextView stv = mAct.findViewById(R.id.header_sides);
+ Resources rs = mAct.getResources();
Runnable r = new Runnable() {
@Override
public void run() {
}
};
- if (gs.isConfigured()) {
+ out: if (gs.isConfigured()) {
String ss = gs.getSides();
if (ss != null) {
final Spanned h;
switch(ss) {
- case "wd" : h = htmlFromStrResId(R.string.ctfws_sides_wd); break;
- case "dw" : h = htmlFromStrResId(R.string.ctfws_sides_dw); break;
- default : h = htmlFromStrResId(R.string.ctfws_unknown_sides); break;
+ case "-" : break out;
+ case "wd" : h = AndroidResourceUtils.htmlFromStrResId(rs, R.string.ctfws_sides_wd); break;
+ case "dw" : h = AndroidResourceUtils.htmlFromStrResId(rs, R.string.ctfws_sides_dw); break;
+ default : h = AndroidResourceUtils.htmlFromStrResId(rs, R.string.ctfws_unknown_sides); break;
}
r = new Runnable() {
@Override
public void onCtFwSFlags(CtFwSGameStateManager gs) {
final Spanned h;
+ Resources rs = mAct.getResources();
if (gs.getFlagsVisible()) {
- h = htmlFromStrResId(R.string.flags_viz_fmt, gs.getFlagsRed(), gs.getFlagsYel());
+ h = AndroidResourceUtils.htmlFromStrResId(rs, R.string.flags_viz_fmt,
+ gs.getFlagsRed(), gs.getFlagsYel());
} else {
- h = htmlFromStrResId(R.string.flags_noviz);
+ h = AndroidResourceUtils.htmlFromStrResId(rs, R.string.flags_noviz);
}
final TextView msgs = mAct.findViewById(R.id.tv_flags);
import android.support.annotation.StringRes;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
+import android.text.Spanned;
import android.util.Log;
import android.view.Menu;
import android.view.MenuInflater;
private CtFwSDisplayLocal mCdl; // set in onStart
private TextView mTvSU; // set in onStart
private TextView mTvSS; // set in onStart
- private void setServerStateText(@StringRes final int resid) {
+ private void setServerStateText(@StringRes final int resid, Object... args) {
+ final Spanned h = AndroidResourceUtils.htmlFromStrResId(getResources(), resid, args);
mTvSS.post(new Runnable() {
@Override
- public void run() { mTvSS.setText(resid); }
+ public void run() { mTvSS.setText(h); }
});
}