Changing EditText bottom line color with appcompat v7

Finally, I have found a solution. It simply consists of overriding the value for colorControlActivated, colorControlHighlight and colorControlNormal in your app theme definition and not your edittext style. Then, think to use this theme for whatever activity you desire. Below is an example: <style name=”Theme.App.Base” parent=”Theme.AppCompat.Light.DarkActionBar”> <item name=”colorControlNormal”>#c5c5c5</item> <item name=”colorControlActivated”>@color/accent</item> <item name=”colorControlHighlight”>@color/accent</item> </style>

RecyclerView: Inconsistency detected. Invalid item position

I had a (possibly) related issue – entering a new instance of an activity with a RecyclerView, but with a smaller adapter was triggering this crash for me. RecyclerView.dispatchLayout() can try to pull items from the scrap before calling mRecycler.clearOldPositions(). The consequence being is that it was pulling items from the common pool that had … Read more

How to set space between listView Items in Android

@Asahi pretty much hit the nail on the head, but I just wanted to add a bit of XML for anyone maybe floating in here later via google: <ListView android:id=”@+id/MyListView” android:layout_height=”match_parent” android:layout_width=”match_parent” android:divider=”@android:color/transparent” android:dividerHeight=”10.0sp”/> For some reason, values such as “10”, “10.0”, and “10sp” all are rejected by Android for the dividerHeight value. It wants … Read more

How to set layout_gravity programmatically?

Java LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.MATCH_PARENT); params.weight = 1.0f; params.gravity = Gravity.TOP; button.setLayoutParams(params); Kotlin val params = LinearLayout.LayoutParams( LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT ).apply { weight = 1.0f gravity = Gravity.TOP } For gravity values and how to set gravity check Gravity. Basically, you should choose the LayoutParams depending on the parent. It can be RelativeLayout, LinearLayout … Read more

What is the purpose of Android’s tag in XML layouts?

<merge/> is useful because it can get rid of unneeded ViewGroups, i.e. layouts that are simply used to wrap other views and serve no purpose themselves. For example, if you were to <include/> a layout from another file without using merge, the two files might look something like this: layout1.xml: <FrameLayout> <include layout=”@layout/layout2″/> </FrameLayout> layout2.xml: … Read more