Hack to get layouts working on API > 16
For some reasono specify different layout-v* directories to inflate views based on the android version is not working as desired. Previously there was a "layout", "layout-land" and "layout-v11" dir. Only "layout" and "layout-v11" had the "select_local_apps_list_item.xml" layout in them, the "layout-v11" version did _not_ have a checkbox, whereas the other vanilla one did. This worked on a android-16 emulator. It would correctly pick up the view from "layout-v11". However, on a android-19 device, android-19 emulator, android-21 device and android-21 emulator, they all picked up the view from the "layout" dir - with checkbox and all. I couldn't figure out for the life of my why this was happening, so I started to figure out which one it _would_ work with. I added a layout-v* for every single version, and in each, put a text view telling me which version it was. That way, viewing the list of apps to swap, the list would inflate a view, and tell me which layout-v* dir it inflated it from. It worked for layout-v17 and higher, but was unable to inflate layouts from layout-v11 to layout-v16. So I deleted all except layout-v17, and it now works for android-16, 19 and 21 as per my tests.
This commit is contained in:
parent
ead4f449d6
commit
9db556f4b7
57
F-Droid/res/layout-v17/select_local_apps_list_item.xml
Normal file
57
F-Droid/res/layout-v17/select_local_apps_list_item.xml
Normal file
@ -0,0 +1,57 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--
|
||||
Copyright (C) 2010 The Android Open Source Project
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
-->
|
||||
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="?android:attr/activatedBackgroundIndicator"
|
||||
android:minHeight="?android:attr/listPreferredItemHeight"
|
||||
android:paddingBottom="2dip"
|
||||
android:paddingTop="2dip" >
|
||||
|
||||
<ImageView
|
||||
android:id="@android:id/icon"
|
||||
android:layout_width="48dip"
|
||||
android:layout_height="48dip"
|
||||
android:layout_marginLeft="?attr/listPreferredItemPaddingLeft"
|
||||
android:layout_marginStart="?android:attr/listPreferredItemPaddingStart"
|
||||
android:layout_marginTop="6dip"
|
||||
tools:ignore="ContentDescription" />
|
||||
|
||||
<TwoLineListItem
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:mode="twoLine" >
|
||||
|
||||
<TextView
|
||||
android:id="@+id/application_label"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginLeft="?attr/listPreferredItemPaddingLeft"
|
||||
android:layout_marginStart="?android:attr/listPreferredItemPaddingStart"
|
||||
android:layout_marginTop="6dip"
|
||||
android:textAppearance="?android:attr/textAppearanceMedium" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/package_name"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_alignStart="@+id/application_label"
|
||||
android:layout_alignLeft="@+id/application_label"
|
||||
android:layout_below="@+id/application_label"
|
||||
android:textAppearance="?android:attr/textAppearanceSmall" />
|
||||
</TwoLineListItem>
|
||||
|
||||
</LinearLayout>
|
Loading…
x
Reference in New Issue
Block a user