Я хотел бы разместить диалоговое окно в определенной позиции на экране (-10 пикселей сверху и -5 пикселей сверху).
Я применил тему и добавил android:scrollX, android:scrollY, но, похоже, это не работает.
Любые решения?
Ниже мой стиль xml.
<style name="Theme.MyDialog1" parent="android:style/Theme.Dialog">
<item name="android:windowNoTitle">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:layout_width">300dp</item>
<item name="android:scrollX">-10dp</item>
<item name="android:scrollY">-5dp</item>
</style>
РЕДАКТИРОВАТЬ:
Я также пробовал android:layout_x и android:layout_y, но бесполезно!
Это то, что у меня есть! [введите описание изображения здесь] [1]
но то, что я действительно хочу, это то, что находится чуть ниже логотипа регистрации, расположенного с определенным положительным значением x и y !!!!![введите описание изображения здесь][2]
Ответ 2 · рейтинг 1 · Brian Griffey
Не расширяйте тему диалога, расширяйте тему панели.
<style name="Theme.CustomPanel" parent="@android:style/Theme.Panel">
<item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
<item name="android:backgroundDimEnabled">true</item>
</style>
Это создает окно, похожее на диалоговое окно, за исключением того, что оно не центрируется, как это делает диалоговое окно. Затем создайте активность, как обычно, затем запустите ее.
Чтобы сделать его на 5 пикселей слева и на 10 пикселей сверху, просто добавьте отступы в свой макет.
<!-- res/layout/your_layout.xml -->
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:paddingTop="10px"
android:paddingLeft="5px"></FrameLayout>
И, конечно же, ваша деятельность должна быть нормальной, например
public class NonCenteredDialogActivity extends Activity{
protected void onCreate(Bundle bundle){
super.onCreate(bundle);
setContentView(R.layout.your_layout);
}
}