На это очень трудно ответить а именно, потому что вопрос очень неконкретен: что такое точно "современный компилятор"?
В значительной степени любая ручная ассемблерная оптимизация могла в теории быть сделанной компилятором также - Является ли это на самом деле сделанным, не может быть сказан в целом, только об определенной версии определенного компилятора. Многие, вероятно, требуют такого усилия определить, могут ли они быть применены без побочных эффектов в конкретном контексте, который разработчики компилятора не беспокоят ими.
Я не уверен, что вы можете сделать это, когда они находятся в одном и том же XML-файле, но я знаю, что если вы переместите:
<org.example.myCustomView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
в другой XML-файл и создадите другое действие. установите представление содержимого для файла XML, который содержит org.example.myCustomView, и вызовите это действие. в манифесте, когда вы добавляете это действие, добавьте оператор темы следующим образом:
android:theme="@android:style/Theme.Dialog"
полный оператор должен выглядеть так:
<activity android:name=".name_of_activity"
android:label="TextToBeOnTop"
android:theme="@android:style/Theme.Dialog">
</activity>
результат будет выглядеть так ( только это будет с вашими компонентами):
, хотя это возможно сделать, когда они все еще находятся в одном и том же XML-файле. если это возможно, это можно сделать, оставив манифест в одиночку и отредактировав свой costomeView следующим образом:
<org.example.myCustomView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:theme="@android:style/Theme.Dialog" />
(я добавил оператор темы в CustomView)
, если это не то, что вы ищете, я бы порекомендовал что-то похожее на то, что сказал Ник Кэмпион, который должен был заменить fillParent на wrapContent. Вы можете сделать это, или вы можете выбрать, какой размер вы хотите, чтобы он был. вот два варианта, которые вы можете использовать:
<org.example.myCustomView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="50dip"
android:layout_height="50dip" />
(вы можете изменить «50dip» на любое число, которое вы хотите, если оно заканчивается dip)
или:
<org.example.myCustomView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />