Различия в дизайнах макетов Android между версиями 2.3.3 и 4+

В моем проекте я столкнулся с какой-то странной проблемой при создании простого XML-проекта:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:background="#FF0000" android:layout_marginLeft="30dp" android:layout_width="fill_parent" android:layout_height="fill_parent"> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="New Button" android:id="@+id/button" android:layout_gravity="left|center_vertical"/> 

Теперь посмотрим разницу, это вид в 4.2.2 :

Версия 2.3.3

И это в 2.3.3 :

Введите описание изображения здесь

Был бы признателен, если кто-то может мне помочь. благодаря

Он работает, если вы измените его на это:

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_gravity="center" android:layout_marginLeft="30dp" android:background="#FF0000" android:orientation="vertical" > <Button android:id="@+id/button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center_vertical" android:text="New Button" /> </LinearLayout> 

(Я думаю, что знаю, почему так ведет себя, позвольте мне просто кое-что проверить. Я добавлю объяснение позже)

Я столкнулся с той же проблемой, в моем случае у меня было что-то вроде этого

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" style="@style/match" android:background="@color/light" android:orientation="vertical" android:layout_margin="@dimen/lateral_margin" > <ImageView android:id="@+id/full_screen_image" style="@style/match_width" android:scaleType="fitCenter" android:layout_gravity="center" android:layout_weight="2" android:contentDescription="@string/image_content_description"/> <TextView android:id="@+id/barcode_number" style="@style/match_width" android:gravity="center" android:textColor="@color/dark_text" android:textSize="30sp" android:visibility="gone" /> </LinearLayout> 

Моя проблема была решена

  android:layout_margin="@dimen/lateral_margin" > 

с:

  android:padding="@dimen/lateral_margin" > 

Кажется, андроиды 2.3.3 и ниже вычисляли разницу по-другому, чем андроид 4 и выше. Теперь все они ведут себя одинаково.

В вашем случае, возможно, настройка черного макета, как дополнение может помочь.

Intereting Posts