Example usage for android.widget TextView setPadding

List of usage examples for android.widget TextView setPadding

Introduction

In this page you can find the example usage for android.widget TextView setPadding.

Prototype

@Override
public void setPadding(int left, int top, int right, int bottom) 

Source Link

Usage

From source file:com.autogermany.opel360.Utils.SlidingTabLayout.java

/**
 * Create a default view to be used for tabs. This is called if a custom tab view is not set via
 * {@link #setCustomTabView(int, int)}./*from  w w  w . ja  v  a2 s .c  o m*/
 */
@SuppressLint("NewApi")
protected TextView createDefaultTabView(Context context) {
    TextView textView = new TextView(context);
    textView.setGravity(Gravity.CENTER);
    textView.setTextColor(Color.parseColor("#FFFFFF"));
    textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, TAB_VIEW_TEXT_SIZE_SP);
    textView.setTypeface(Typeface.DEFAULT_BOLD);
    textView.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT,
            LinearLayout.LayoutParams.WRAP_CONTENT, 1f));

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
        // If we're running on Honeycomb or newer, then we can use the Theme's
        // selectableItemBackground to ensure that the View has a pressed state
        TypedValue outValue = new TypedValue();
        getContext().getTheme().resolveAttribute(android.R.attr.selectableItemBackground, outValue, true);
        textView.setBackgroundResource(outValue.resourceId);
    }

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
        // If we're running on ICS or newer, enable all-caps to match the Action Bar tab style
        textView.setAllCaps(true);
    }

    int padding = (int) (TAB_VIEW_PADDING_DIPS * getResources().getDisplayMetrics().density);
    textView.setPadding(padding, padding, padding, padding);

    return textView;
}

From source file:cn.scujcc.bug.bitcoinplatformandroid.view.SlidingTabLayout.java

/**
 * Create a default view to be used for tabs. This is called if a custom tab
 * view is not set via {@link #setCustomTabView(int, int)}.
 *///from w w w  .  j a v  a 2  s.  c om

protected TextView createDefaultTabView(Context context) {
    TextView textView = new TextView(context);
    textView.setGravity(Gravity.CENTER);
    textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, TAB_VIEW_TEXT_SIZE_SP);
    textView.setTypeface(Typeface.DEFAULT_BOLD);
    textView.setWidth(screenX);

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
        // If we're running on Honeycomb or newer, then we can use the
        // Theme's
        // selectableItemBackground to ensure that the View has a pressed
        // state
        TypedValue outValue = new TypedValue();
        getContext().getTheme().resolveAttribute(android.R.attr.selectableItemBackground, outValue, true);
        textView.setBackgroundResource(outValue.resourceId);
    }

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
        // If we're running on ICS or newer, enable all-caps to match the
        // Action Bar tab style
        textView.setAllCaps(true);
    }

    int padding = (int) (TAB_VIEW_PADDING_DIPS * getResources().getDisplayMetrics().density);
    textView.setPadding(padding, padding, padding, padding);

    return textView;
}

From source file:com.netdoers.zname.utils.SlidingTabLayout.java

/**
 * Create a default view to be used for tabs. This is called if a custom tab view is not set via
 * {@link #setCustomTabView(int, int)}.//w ww. j a va  2 s.  co  m
 */
protected TextView createDefaultTabView(Context context) {
    TextView textView = new TextView(context);
    textView.setGravity(Gravity.CENTER);
    textView.setLayoutParams(
            new android.widget.LinearLayout.LayoutParams(android.widget.LinearLayout.LayoutParams.FILL_PARENT,
                    android.widget.LinearLayout.LayoutParams.WRAP_CONTENT, 1.0f));
    textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, TAB_VIEW_TEXT_SIZE_SP);
    textView.setTypeface(Typeface.DEFAULT_BOLD);

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
        // If we're running on Honeycomb or newer, then we can use the Theme's
        // selectableItemBackground to ensure that the View has a pressed state
        TypedValue outValue = new TypedValue();
        getContext().getTheme().resolveAttribute(android.R.attr.selectableItemBackground, outValue, true);
        textView.setBackgroundResource(outValue.resourceId);
    }

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
        // If we're running on ICS or newer, enable all-caps to match the Action Bar tab style
        //            textView.setAllCaps(true);
    }

    int padding = (int) (TAB_VIEW_PADDING_DIPS * getResources().getDisplayMetrics().density);
    textView.setPadding(padding, padding, padding, padding);

    return textView;
}

From source file:com.juick.android.ThreadActivity.java

private void previewAndSendReply(final String msg) {
    final SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(this);
    if (sp.getBoolean("previewReplies", false)) {
        final TextView tv = new TextView(this);
        JuickMessage jm = new JuickMessage();
        jm.User = new JuickUser();
        jm.User.UName = "You";
        jm.Text = msg;//from  w  w w.  java 2 s  . c om
        jm.tags = new Vector<String>();
        if (rid != 0) {
            // insert destination user name
            JuickMessage reply = tf.findReply(tf.getListView(), rid);
            if (reply != null) {
                jm.Text = "@" + reply.User.UName + " " + jm.Text;
            }
        }
        JuickMessagesAdapter.ParsedMessage parsedMessage = JuickMessagesAdapter.formatMessageText(this, jm,
                true);
        tv.setText(parsedMessage.textContent);
        tv.setPadding(10, 10, 10, 10);
        MainActivity.restyleChildrenOrWidget(tv);
        final AlertDialog dialog = new AlertDialog.Builder(
                new ContextThemeWrapper(this, R.style.Theme_Sherlock_Light)).setTitle("Post reply - preview")
                        .setView(tv).setCancelable(true)
                        .setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog, int which) {
                                dialog.cancel();
                            }
                        }).setPositiveButton("Post reply", new DialogInterface.OnClickListener() {
                            @Override
                            public void onClick(DialogInterface dialog, int which) {
                                dialog.cancel();
                                sendReplyMain(msg);
                            }
                        }).create();
        dialog.setOnShowListener(new DialogInterface.OnShowListener() {
            @Override
            public void onShow(DialogInterface i) {
                tv.setBackgroundColor(JuickMessagesAdapter.getColorTheme(dialog.getContext()).getBackground());
                MainActivity.restyleChildrenOrWidget(tv);
            }
        });
        dialog.show();
    } else {
        sendReplyMain(msg);
    }
}

From source file:com.example.sdave.footballscore.SlidingTabs.SlidingTabLayout.java

/**
 * Create a default view to be used for tabs. This is called if a custom tab view is not set via
 * {@link #setCustomTabView(int, int)}.// www  .  j  a  va2  s . co  m
 */
protected TextView createDefaultTabView(Context context) {
    TextView textView = new TextView(context);
    textView.setGravity(Gravity.CENTER);
    textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, TAB_VIEW_TEXT_SIZE_SP);
    textView.setTypeface(Typeface.DEFAULT_BOLD);

    WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
    Display display = wm.getDefaultDisplay();
    Point size = new Point();
    display.getSize(size);
    textView.setWidth(size.x / 3);

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
        // If we're running on Honeycomb or newer, then we can use the Theme's
        // selectableItemBackground to ensure that the View has a pressed state
        TypedValue outValue = new TypedValue();
        getContext().getTheme().resolveAttribute(android.R.attr.selectableItemBackground, outValue, true);
        textView.setBackgroundResource(outValue.resourceId);
    }

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
        // If we're running on ICS or newer, enable all-caps to match the Action Bar tab style
        textView.setAllCaps(true);
    }

    int padding = (int) (TAB_VIEW_PADDING_DIPS * getResources().getDisplayMetrics().density);
    textView.setPadding(padding, padding, padding, padding);

    return textView;
}

From source file:com.randomappsinc.bro.Layouts.SlidingTabLayout.java

/**
 * Create a default view to be used for tabs. This is called if a custom tab view is not set via
 * {@link #setCustomTabView(int, int)}.//  w  w  w . ja va  2 s .  co  m
 */
protected TextView createDefaultTabView(Context context) {

    TextView textView = new TextView(context);
    textView.setGravity(Gravity.CENTER);
    textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, TAB_VIEW_TEXT_SIZE_SP);
    textView.setTypeface(Typeface.DEFAULT_BOLD);

    WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
    Display display = wm.getDefaultDisplay();
    Point size = new Point();
    display.getSize(size);
    textView.setWidth(size.x / numTabs);

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
        // If we're running on Honeycomb or newer, then we can use the Theme's
        // selectableItemBackground to ensure that the View has a pressed state
        TypedValue outValue = new TypedValue();
        getContext().getTheme().resolveAttribute(android.R.attr.selectableItemBackground, outValue, true);
        textView.setBackgroundResource(outValue.resourceId);
    }

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
        // If we're running on ICS or newer, enable all-caps to match the Action Bar tab style
        textView.setAllCaps(true);
    }

    int padding = (int) (TAB_VIEW_PADDING_DIPS * getResources().getDisplayMetrics().density);
    textView.setPadding(padding, padding, padding, padding);

    return textView;
}

From source file:com.tonyjs.hashtagram.ui.widget.SlidingTabLayout.java

/**
 * Create a default view to be used for tabs. This is called if a custom tab view is not set via
 * {@link #setCustomTabView(int, int)}.//from  ww w . j  ava2  s.  c o m
 */
protected TextView createDefaultTabView(Context context) {
    TextView textView = new TextView(context);
    textView.setGravity(Gravity.CENTER);
    textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, TAB_VIEW_TEXT_SIZE_SP);
    textView.setTextColor(Color.WHITE);
    textView.setTypeface(Typeface.DEFAULT_BOLD);

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
        // If we're running on Honeycomb or newer, then we can use the Theme's
        // selectableItemBackground to ensure that the View has a pressed state
        TypedValue outValue = new TypedValue();
        getContext().getTheme().resolveAttribute(android.R.attr.selectableItemBackground, outValue, true);
        textView.setBackgroundResource(outValue.resourceId);
    }

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
        // If we're running on ICS or newer, enable all-caps to match the Action Bar tab style
        //            textView.setAllCaps(true);
    }

    ViewGroup.LayoutParams params = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT,
            ViewGroup.LayoutParams.MATCH_PARENT);
    textView.setLayoutParams(params);

    int padding = (int) (TAB_VIEW_PADDING_DIPS * getResources().getDisplayMetrics().density);
    textView.setPadding(padding, padding, padding, padding);

    return textView;
}

From source file:com.hichinaschool.flashcards.anki.CardEditor.java

private void populateEditFields() {
    mFieldsLayoutContainer.removeAllViews();
    mEditFields = new LinkedList<FieldEditText>();
    String[][] fields = mEditorNote.items();

    // Use custom font if selected from preferences
    Typeface mCustomTypeface = null;/*  w  w  w.ja v  a 2s  .  co m*/
    SharedPreferences preferences = AnkiDroidApp.getSharedPrefs(getBaseContext());
    String customFont = preferences.getString("browserEditorFont", "");
    if (!customFont.equals("")) {
        mCustomTypeface = AnkiFont.getTypeface(this, customFont);
    }

    for (int i = 0; i < fields.length; i++) {
        FieldEditText newTextbox = new FieldEditText(this, i, fields[i]);

        if (mCustomTypeface != null) {
            newTextbox.setTypeface(mCustomTypeface);
        }

        TextView label = newTextbox.getLabel();
        label.setTextColor(Color.BLACK);
        label.setPadding((int) UIUtils.getDensityAdjustedValue(this, 3.4f), 0, 0, 0);
        mEditFields.add(newTextbox);
        FrameLayout frame = new FrameLayout(this);
        FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT,
                ViewGroup.LayoutParams.WRAP_CONTENT, Gravity.RIGHT | Gravity.CENTER_VERTICAL);
        params.rightMargin = 10;
        frame.addView(newTextbox);
        mFieldsLayoutContainer.addView(label);
        mFieldsLayoutContainer.addView(frame);
    }
}

From source file:net.networksaremadeofstring.rhybudd.ViewZenossEvent.java

/** Called when the activity is first created. */
@Override/* w w w. j a  v  a2s  . c o  m*/
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    BugSenseHandler.initAndStartSession(ViewZenossEvent.this, "44a76a8c");

    settings = PreferenceManager.getDefaultSharedPreferences(this);

    setContentView(R.layout.view_zenoss_event);

    try {
        actionbar = getActionBar();
        actionbar.setDisplayHomeAsUpEnabled(true);
        actionbar.setHomeButtonEnabled(true);
    } catch (Exception e) {
        BugSenseHandler.sendExceptionMessage("ViewZenossEvent", "OnCreate", e);
    }

    try {
        ((TextView) findViewById(R.id.EventTitle)).setText(getIntent().getStringExtra("Device"));
        ((TextView) findViewById(R.id.Summary)).setText(Html.fromHtml(getIntent().getStringExtra("Summary")));
        ((TextView) findViewById(R.id.LastTime)).setText(getIntent().getStringExtra("LastTime"));
        ((TextView) findViewById(R.id.EventCount))
                .setText("Count: " + Integer.toString(getIntent().getIntExtra("Count", 0)));
    } catch (Exception e) {
        //We don't need to much more than report it because the direct API request will sort it out for us.
        BugSenseHandler.sendExceptionMessage("ViewZenossEvent", "OnCreate", e);
    }

    firstLoadHandler = new Handler() {
        public void handleMessage(Message msg) {
            dialog.dismiss();
            try {
                if (EventObject.has("result")
                        && EventObject.getJSONObject("result").getBoolean("success") == true) {
                    //Log.i("Event",EventObject.toString(3));
                    TextView Title = (TextView) findViewById(R.id.EventTitle);
                    TextView Component = (TextView) findViewById(R.id.Componant);
                    TextView EventClass = (TextView) findViewById(R.id.EventClass);
                    TextView Summary = (TextView) findViewById(R.id.Summary);
                    TextView FirstTime = (TextView) findViewById(R.id.FirstTime);
                    TextView LastTime = (TextView) findViewById(R.id.LastTime);
                    LinearLayout logList;

                    EventDetails = EventObject.getJSONObject("result").getJSONArray("event").getJSONObject(0);

                    try {
                        if (EventDetails.getString("eventState").equals("Acknowledged")) {
                            ((ImageView) findViewById(R.id.ackIcon))
                                    .setImageResource(R.drawable.ic_acknowledged);
                        }
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
                    //Log.e("EventDetails",EventDetails.toString(3));

                    try {
                        Title.setText(EventDetails.getString("device_title"));
                    } catch (Exception e) {
                        Title.setText("Unknown Device - Event Details");
                    }

                    try {
                        Component.setText(EventDetails.getString("component"));
                    } catch (Exception e) {
                        Component.setText("Unknown Component");
                    }

                    try {
                        EventClass.setText(EventDetails.getString("eventClassKey"));
                    } catch (Exception e) {
                        EventClass.setText("Unknown Event Class");
                    }

                    try {
                        ImageView img = (ImageView) findViewById(R.id.summaryImage);

                        URLImageParser p = new URLImageParser(img, ViewZenossEvent.this, Summary);
                        Spanned htmlSpan = Html.fromHtml(EventDetails.getString("message"), p, null);

                        Summary.setText(htmlSpan);
                        //Summary.setText(Html.fromHtml(EventDetails.getString("message")));

                        //((ImageView) findViewById(R.id.summaryImage)).setImageDrawable(p.drawable);
                        //Log.i("Summary",EventDetails.getString("message"));

                        //((TextView) findViewById(R.id.Summary)).setVisibility(View.GONE);
                        //((WebView) findViewById(R.id.summaryWebView)).loadData(EventDetails.getString("message"), "text/html", null);
                        //((WebView) findViewById(R.id.summaryWebView)).loadDataWithBaseURL(null, EventDetails.getString("message"), "text/html", "UTF-8", "about:blank");

                        try {
                            Summary.setMovementMethod(LinkMovementMethod.getInstance());
                        } catch (Exception e) {
                            //Worth a shot
                        }
                    } catch (Exception e) {
                        Summary.setText("No Summary available");
                    }

                    try {
                        FirstTime.setText(EventDetails.getString("firstTime"));
                    } catch (Exception e) {
                        FirstTime.setText("No Start Date Provided");
                    }

                    try {
                        LastTime.setText(EventDetails.getString("stateChange"));
                    } catch (Exception e) {
                        LastTime.setText("No Recent Date Provided");
                    }

                    try {
                        ((TextView) findViewById(R.id.EventCount))
                                .setText("Count: " + EventDetails.getString("count"));
                    } catch (Exception e) {
                        ((TextView) findViewById(R.id.EventCount)).setText("Count: ??");
                    }

                    try {
                        ((TextView) findViewById(R.id.Agent)).setText(EventDetails.getString("agent"));
                    } catch (Exception e) {
                        ((TextView) findViewById(R.id.Agent)).setText("unknown");
                    }

                    try {
                        JSONArray Log = EventDetails.getJSONArray("log");

                        int LogEntryCount = Log.length();

                        logList = (LinearLayout) findViewById(R.id.LogList);

                        if (LogEntryCount == 0) {
                            /*String[] LogEntries = {"No log entries could be found"};
                            ((ListView) findViewById(R.id.LogList)).setAdapter(new ArrayAdapter<String>(ViewZenossEvent.this, R.layout.search_simple,LogEntries));*/

                            TextView newLog = new TextView(ViewZenossEvent.this);
                            newLog.setText("No log entries could be found");

                            logList.addView(newLog);
                        } else {
                            LogEntries = new String[LogEntryCount];

                            for (int i = 0; i < LogEntryCount; i++) {
                                //LogEntries[i] = Log.getJSONArray(i).getString(0) + " set " + Log.getJSONArray(i).getString(2) +"\nAt: " + Log.getJSONArray(i).getString(1);

                                TextView newLog = new TextView(ViewZenossEvent.this);
                                newLog.setText(Html.fromHtml("<strong>" + Log.getJSONArray(i).getString(0)
                                        + "</strong> wrote " + Log.getJSONArray(i).getString(2)
                                        + "\n<br/><strong>At:</strong> " + Log.getJSONArray(i).getString(1)));
                                newLog.setPadding(0, 6, 0, 6);
                                logList.addView(newLog);
                            }

                            /*try
                            {
                               ((ListView) findViewById(R.id.LogList)).setAdapter(new ArrayAdapter<String>(ViewZenossEvent.this, R.layout.search_simple,LogEntries));
                            }
                            catch(Exception e)
                            {
                               Toast.makeText(getApplicationContext(), "There was an error trying process the log entries for this event.", Toast.LENGTH_SHORT).show();
                            }*/
                        }
                    } catch (Exception e) {
                        TextView newLog = new TextView(ViewZenossEvent.this);
                        newLog.setText("No log entries could be found");
                        newLog.setPadding(0, 6, 0, 6);
                        ((LinearLayout) findViewById(R.id.LogList)).addView(newLog);

                        /*String[] LogEntries = {"No log entries could be found"};
                        try
                        {
                           ((ListView) findViewById(R.id.LogList)).setAdapter(new ArrayAdapter<String>(ViewZenossEvent.this, R.layout.search_simple,LogEntries));
                        }
                        catch(Exception e1)
                        {
                           //BugSenseHandler.log("ViewZenossEvent-LogEntries", e1);
                        }*/
                    }
                } else {
                    //Log.e("ViewEvent",EventObject.toString(3));
                    Toast.makeText(ViewZenossEvent.this, "There was an error loading the Event details",
                            Toast.LENGTH_LONG).show();
                    //finish();
                }
            } catch (Exception e) {
                Toast.makeText(ViewZenossEvent.this,
                        "An error was encountered parsing the JSON. An error report has been sent.",
                        Toast.LENGTH_LONG).show();
                //BugSenseHandler.log("ViewZenossEvent", e);
            }
        }
    };

    dialog = new ProgressDialog(this);
    dialog.setTitle("Contacting Zenoss");
    dialog.setMessage("Please wait:\nLoading Event details....");
    dialog.show();
    dataPreload = new Thread() {
        public void run() {
            try {
                /*if(API == null)
                {
                   if(settings.getBoolean("httpBasicAuth", false))
                   {
                      API = new ZenossAPIv2(settings.getString("userName", ""), settings.getString("passWord", ""), settings.getString("URL", ""),settings.getString("BAUser", ""), settings.getString("BAPassword", ""));
                   }
                   else
                   {
                      API = new ZenossAPIv2(settings.getString("userName", ""), settings.getString("passWord", ""), settings.getString("URL", ""));
                   }
                }
                        
                EventObject = API.GetEvent(getIntent().getStringExtra("EventID"));*/

                if (settings.getBoolean(ZenossAPI.PREFERENCE_IS_ZAAS, false)) {
                    API = new ZenossAPIZaas();
                } else {
                    API = new ZenossAPICore();
                }

                ZenossCredentials credentials = new ZenossCredentials(ViewZenossEvent.this);
                API.Login(credentials);
                EventObject = API.GetEvent(getIntent().getStringExtra("EventID"));
            } catch (Exception e) {
                firstLoadHandler.sendEmptyMessage(0);
                BugSenseHandler.sendExceptionMessage("ViewZenossEvent", "DataPreloadThread", e);
            } finally {
                firstLoadHandler.sendEmptyMessage(1);
            }
        }
    };

    dataPreload.start();
}

From source file:com.vgaw.androidtest.view.SlidingTabStrip.java

/**
 * Create a default view to be used for tabs. This is called if a custom tab view is not set via
 * {@link #setCustomTabView(int, int)}./*from ww w  .ja  v  a2s  .c  o  m*/
 */
protected TextView createDefaultTabView(Context context) {
    TextView textView = new TextView(context);
    textView.setGravity(Gravity.CENTER);
    textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, TAB_VIEW_TEXT_SIZE_SP);
    textView.setTypeface(Typeface.DEFAULT_BOLD);
    LayoutParams params = new LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
            ViewGroup.LayoutParams.MATCH_PARENT, 1f);
    textView.setLayoutParams(params);

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
        // If we're running on Honeycomb or newer, then we can use the Theme's
        // selectableItemBackground to ensure that the View has a pressed state
        TypedValue outValue = new TypedValue();
        getContext().getTheme().resolveAttribute(android.R.attr.selectableItemBackground, outValue, true);
        textView.setBackgroundResource(outValue.resourceId);
    }

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) {
        // If we're running on ICS or newer, enable all-caps to match the Action Bar tab style
        textView.setAllCaps(true);
    }

    int padding = (int) (TAB_VIEW_PADDING_DIPS * getResources().getDisplayMetrics().density);
    textView.setPadding(padding, padding, padding, padding);

    return textView;
}