2014-11-03 127 views
0

我有相對佈局的屏幕右側的3個按鈕的活動,除了按鈕我有非常「脆弱」與條形碼掃描儀片段(碰巧吐出時,以編程方式觸摸)和自定義ListView。以編程方式更改按鈕位置

典型的按鈕看起來是這樣的:

<Button 
    android:id="@+id/typical" 
    android:layout_height="wrap_content" 
    android:layout_alignParentEnd="true" 
    android:layout_alignParentRight="true" 
    android:onClick="typical" 
    android:text="@string/typical" /> 

根據我想設置的按鍵佈局父右/結束左對齊/不碰別的開始霸道的偏好。我怎樣才能做到這一點?

我想:

Button typical = (Button) findViewById(R.id.typical); 
    RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT); 
    params.addRule(RelativeLayout.ALIGN_PARENT_START); 
    params.addRule(RelativeLayout.ALIGN_PARENT_LEFT); 
    typical.setLayoutParams(params); 

但它使我的條形碼片段變化參數,哭:(

回答

0

兩個想法:

  1. 不是創建一個新的佈局,則params的,嘗試改爲使用按鈕內部的佈局參數,刪除對齊右邊的規則,並添加對齊左邊的規則。

  2. 而不是玩弄按鈕的佈局參數(與相對佈局內的佈局參數相混淆可能會影響性能),爲什麼不製作2個按鈕 - 每邊一個,並且總是隱藏其中一個按鈕?

希望這會有所幫助。

+0

帶隱藏按鈕的想法反而非常棒!非常感謝:) – 2014-11-03 15:19:39

+0

不用擔心。如果它適合你,請隨時接受答案。 – 2014-11-03 15:28:23

相關問題