回答
這個原因可能是你有不同的屏幕多個佈局文件密度/屏幕尺寸/ android版本。
檢查您的佈局文件夾,並確保沒有在多個文件夾中的多個lauout文件;)
看看你的XML定義:
<Button
android:text="Back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/button5"
android:layout_toLeftOf="@+id/button2"
android:layout_toStartOf="@+id/progressBar2"
android:layout_marginRight="11dp"
android:layout_marginEnd="11dp"
android:layout_alignBottom="@+id/button2" />
<Button
android:text="Sign up"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="32dp"
android:id="@+id/button2"
android:layout_below="@+id/editText2"
android:layout_toRightOf="@+id/button5"
android:layout_toEndOf="@+id/progressBar2"
android:layout_marginLeft="14dp"
android:layout_marginStart="14dp" />
你立足的「符號的位置UP」按鈕,將‘返回’按鈕,通過此聲明:
android:layout_toRightOf="@+id/button5"
我將讓你正在使用隱藏button5
的假設,這反過來將實際上阻止button5
被繪製。
現在從您的佈局中丟失,button2
將不再有依靠依據。從而使其一直轉移到左側。
的解決方案是非常簡單的:使用View.INVISIBLE
而不是View.GONE
隱藏正在依靠另一個觀點:
android:visibility="invisible"
如果:
如果您是通過XML隱藏它您通過Java以編程方式隱藏它:
button5.setVisibility(View.INVISIBLE);
您在xml佈局中有circular dependancy
。
你不能/不應該做的事:
<Button
android:id="@+id/button5"
android:layout_toLeftOf="@+id/button2" />
<Button
android:id="@+id/button2"
android:layout_toRightOf="@+id/button5" />
設置其中之一的位置,並根據家長只(如alignParentLeft="true"
),然後就可以設置其它的基礎上的位置第一個按鈕。 Circular dependancies
有意想不到的結果,可能會在Studio
和Android
中顯示不同的結果,或在Android
的不同版本中顯示不同的結果。
我不確定爲什麼顯示在android studio中是正確的,但快速瀏覽一下你的xml,你可以看到back button
和sign up button
的引用被搞砸了。請記住,相對佈局使用具有view A
的概念,它可以作爲的view B
位置的參考用,在你的XML您有:
<Button
android:text="Back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/button5"
android:layout_toLeftOf="@+id/button2"
android:layout_toStartOf="@+id/progressBar2"
android:layout_marginRight="11dp"
android:layout_marginEnd="11dp"
android:layout_alignBottom="@+id/button2" />
<Button
android:text="Sign up"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="32dp"
android:id="@+id/button2"
android:layout_below="@+id/editText2"
android:layout_toRightOf="@+id/button5"
android:layout_toEndOf="@+id/progressBar2"
android:layout_marginLeft="14dp"
android:layout_marginStart="14dp" />
button5
引用button2
,反之亦然,這裏的一個問題是你甚至不知道button2
是哪裏,但你用它作爲參考。另外,button5
取決於button2
的位置,但您使用button5
作爲button2
的參考。
我建議使用editText2
作爲您的兩個按鈕的參考,因爲editText2
已確立其位置。使用android:layout_below="@+id/editText2"
,然後根據您的需要添加頂部邊距。在此之後,使用
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
爲返回鍵,使用
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
的註冊按鈕。然後你可以調整兩個按鈕的邊距。
在xml佈局中有一個循環依賴。
你可以看到
嘗試這個
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_main"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin">
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:inputType="textEmailAddress"
android:ems="10"
android:layout_marginTop="39dp"
android:id="@+id/editText"
android:hint="email"
android:textAlignment="center"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true" />
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:inputType="textPassword"
android:ems="10"
android:layout_marginTop="47dp"
android:id="@+id/editText2"
android:hint="pass"
android:textAlignment="center"
android:layout_below="@+id/editText"
android:layout_alignLeft="@+id/editText"
android:layout_alignStart="@+id/editText" />
<Button
android:text="Back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/button5"
android:layout_toStartOf="@+id/progressBar2"
android:layout_marginRight="11dp"
android:layout_marginEnd="11dp"
android:layout_alignBottom="@+id/button2"
android:layout_toLeftOf="@+id/progressBar2" />
<Button
android:text="Sign up"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="32dp"
android:id="@+id/button2"
android:layout_below="@+id/editText2"
android:layout_toEndOf="@+id/progressBar2"
android:layout_marginLeft="14dp"
android:layout_marginStart="14dp"
android:layout_toRightOf="@+id/progressBar2" />
<ProgressBar
style="?android:attr/progressBarStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="85dp"
android:id="@+id/progressBar2"
android:layout_below="@+id/button5"
android:layout_centerHorizontal="true" />
</RelativeLayout>
- 1. Android的佈局,搞砸了的LinearLayout
- 2. CSS - 佈局全搞砸了
- 3. 頁面佈局搞砸了
- 4. Android佈局搞砸了電話
- 5. Android佈局搞砸了(使用Fragments/Viewpager)
- 6. Superscrollorama onPin搞砸了我的佈局
- 7. CSS我的網站佈局搞砸了
- 8. 網站佈局被搞砸了
- 9. 搞砸了Eclipse窗口布局
- 10. 佈局在Firefox中搞砸了 - 列?
- 11. CSS佈局完全搞砸了IE 11
- 12. vs2010窗口布局搞砸了
- 13. 佈局完全搞砸了IE 7
- 14. WinForms佈局隨機搞砸
- 15. mod_rewrite用php搞砸了嗎?
- 16. eclipse android xml編輯器在多個佈局中搞砸id
- 17. Android xml文件佈局在加載模擬器時會搞砸
- 18. 網站佈局都搞砸了Android只有
- 19. Android搞砸了繪圖
- 20. gridview_paging搞砸了
- 21. Python全局環境搞砸了
- 22. 我的Codeigniter .htaccess搞砸了嗎?
- 23. 我搞砸了我的System_server服務嗎?
- 24. html佈局變得搞砸變焦
- 25. 網格佈局(浮點數)搞砸
- 26. iPhone佈局在模擬器搞砸
- 27. 搞砸了android-studio和android-sdk
- 28. 盒子搞砸了
- 29. Bootstrap列搞砸了
- 30. NumPy搞砸了CX_Freeze?
你隱藏與可視性進度=到哪裏去了?嘗試使用可見性=不可見 –