package net.tasksnow.util;
import android.content.Context;
import android.text.Html;
import android.text.InputType;
import android.text.TextUtils;
import android.text.method.LinkMovementMethod;
import android.util.DisplayMetrics;
import android.view.WindowManager;
import android.widget.EditText;
import android.widget.TextView;
/**
* @author D056943
* @since 16:40:21 - 19.12.2012
* @project cFoldersDemo
*/
public class UIUtils {
// ===========================================================
// Constants
// ===========================================================
private static float SCALE = 0;
// ===========================================================
// Constructors
// ===========================================================
private UIUtils() {
}
// ===========================================================
// Methods
// ===========================================================
/**
* Populate the given {@link TextView} with the requested text, formatting
* through {@link Html#fromHtml(String)} when applicable. Also sets {@link TextView#setMovementMethod} so inline links are handled.
*/
public static void setTextMaybeHtml(TextView view, String text) {
if (TextUtils.isEmpty(text)) {
view.setText("");
return;
}
if (text.contains("<") && text.contains(">")) {
view.setText(Html.fromHtml(text));
view.setMovementMethod(LinkMovementMethod.getInstance());
}
else {
view.setText(text);
}
}
public static DisplayMetrics getDisplayMetrics(Context context) {
DisplayMetrics metrics = new DisplayMetrics();
WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
//Display display = wm.getDefaultDisplay();
wm.getDefaultDisplay().getMetrics(metrics);
return metrics;
}
public static EditText disableAutoSuggest(EditText editText) {
editText.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);
editText.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_MULTI_LINE);
editText.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_FILTER);
editText.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_VARIATION_FILTER | InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);
editText.setInputType(InputType.TYPE_TEXT_VARIATION_NORMAL | InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);
editText.setInputType(InputType.TYPE_TEXT_VARIATION_NORMAL | InputType.TYPE_TEXT_VARIATION_FILTER);
editText.setInputType(InputType.TYPE_TEXT_VARIATION_NORMAL | InputType.TYPE_TEXT_VARIATION_FILTER
| InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS);
return editText;
}
public static int dpToPixel(int dp, Context context) {
if (SCALE == 0) {
if (context != null) {
SCALE = context.getResources().getDisplayMetrics().density;
}
else {
return dp;
}
}
return (int) (dp * SCALE);
}
}