當前位置:首頁 » 安卓系統 » android控制項的移動

android控制項的移動

發布時間: 2023-06-16 08:20:07

⑴ 在android中如何改變控制項的坐標(例如一個button,我想讓它向右移動20dp)

RelativeLayout.LayoutParams ballLp = (android.widget.RelativeLayout.LayoutParams)b.getLayoutParams();
ballLp.leftMargin = 從你控制項的基礎上加20像素;
ballLp.topMargin = 不變:
b.setLayoutParams(ballLp);

這沒有移動的動畫,只是直接跳到次位置上
要有移動的話可以加動畫,或者讓這段代碼執行20次,每次leftMargin增加1就可以了。

⑵ android開發如何實現一個控制項移動,其他控制項

可以看看android studio 2.2裡面新出的ConstraintLayout布局,可以給各個控制項添加相互之間的約束,以達到移動一個控制項,另一個控制項跟著移動的效果。
另外,這個約束不僅是可以在布局的時候直接通過xml添加,也可以自定義約束變化,以達到更炫的效果。

⑶ 在android頁面上為什麼添加的控制項都不能移動

把最外層的容器改為Relativelayout,就可以拖動了。

只是在android上基本不用拖動的方式來布局的,這對你以後沒什麼好處。還是老老實實學習xml布局吧,以後你就知道為什麼拖不可取了。

⑷ android怎麼移動按鈕

剛才手機在畫面的顯示裡面,點擊移動按鈕就可以移動按鈕。

⑸ android 控制項移動方法

Android控制項位置都是自己設置的。
如果要控制項放到任意位置,建議用RelativeLayout(相對布局)
然後給控制項添加屬性,把控制項放到想要的位置
下面是相對布局中 控制項能用到的屬性。
屬性值為true可false
android:layout_centerHrizontal 水平居中
android:layout_centerVertical 垂直居中
android:layout_centerInparent 相對於父元素完全居中
android:layout_alignParentBottom 貼緊父元素的下邊緣
android:layout_alignParentLeft 貼緊父元素的左邊緣
android:layout_alignParentRight 貼緊父元素的右邊緣
android:layout_alignParentTop 貼緊父元素的上邊緣
屬性值必須為id的引用名
android:layout_below 在某元素的下方
android:layout_above 在某元素的上方
android:layout_toLeftOf 在某元素的左邊
android:layout_toRightOf 在某元素的右邊
android:layout_alignTop 本元素的上邊緣和某元素的上邊緣對齊
android:layout_alignLeft 本元素的左邊緣和某元素的左邊緣對齊
android:layout_alignBottom 本元素的下邊緣和某元素下邊緣對齊
android:layout_alignRight 本元素的右邊緣和某元素右邊緣對齊
屬性值為具體的像素值班,如30dp
android:layout_marginBottom 離某元素底邊緣的距離
android:layout_marginLeft 離某元素左邊緣的的距離
android:layout_marginRight 離某元素的右邊緣的距離
android:layout_marginTop 離某元素上邊緣的距離

⑹ android手勢如何平移控制項

解決方案1:
重寫該控制項的onTouch方法,move狀態設置該view的margin或者在放手狀態up中設置不需要手勢監聽吧,在該方法中判斷,是down狀態記錄按下的位置,控制項移動一般都是相對布局
解決方案2:
ontounchListener監聽事件
解決方案3:
scroller調用scrollTo
知識點延伸閱讀:
控制項平移劃過屏幕(Scroller簡單使用)
MainActivity如下:
package cc.cn;

import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.app.Activity;
/
Demo描述:
Scroller使用示例——讓控制項平移劃過屏幕

注意事項:
1 在布局中將cc.cn.LinearLayoutSubClass的控制項的寬度設置為"fill_parent"
便於觀察滑動的效果
/
public class MainActivity extends Activity {
private Button mButton;
private LinearLayoutSubClass mLinearLayoutSubClass;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
init();
}

private void init(){
mLinearLayoutSubClass=(LinearLayoutSubClass) findViewById(R.id.linearLayoutSubClass);
mButton=(Button) findViewById(R.id.button);
mButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
mLinearLayoutSubClass.beginScroll();
}
});
}

}
LinearLayoutSubClass如下:

package cc.cn;

import android.content.Context;
import android.util.AttributeSet;
import android.widget.LinearLayout;
import android.widget.Scroller;
/**
* API注釋:
*
* 1 //第一,二個參數起始位置;第三,四個滾動的偏移量;第五個參數持續時間
* startScroll(int startX, int startY, int dx, int dy, int ration)
*
* 2 //在startScroll()方法執行過程中即在ration時間內computeScrollOffset()
* 方法會一直返回true,但當動畫執行完成後會返回返加false.
* computeScrollOffset()
*
* 3 當執行ontouch()或invalidate()或postInvalidate()均會調用該方法
* computeScroll()
*
*/
public class LinearLayoutSubClass extends LinearLayout {
private Scroller mScroller;
private boolean flag=true;

public LinearLayoutSubClass(Context context) {
super(context);
}

public LinearLayoutSubClass(Context context, AttributeSet attrs) {
super(context, attrs);
//也可採用該構造方法傳入一個interpolator
//mScroller=new Scroller(context, interpolator);
mScroller=new Scroller(context);
}

@Override
public void computeScroll() {
super.computeScroll();
if(mScroller.computeScrollOffset()){
scrollTo(mScroller.getCurrX(), 0);
//使其再次調用computeScroll()直至滑動結束,即不滿足if條件
postInvalidate();
}
}

public void beginScroll(){
if (flag) {
mScroller.startScroll(0, 0, -2500, 0, 2500);
flag = false;
} else {
mScroller.startScroll(0, 0, 0, 0, 1500);
flag = true;
}
//調用invalidate();使其調用computeScroll()
invalidate();
}

}

熱點內容
紅帆oa伺服器地址查詢 發布:2025-02-07 14:31:41 瀏覽:656
文本框腳本圖片 發布:2025-02-07 14:23:28 瀏覽:229
少兒編程c語言 發布:2025-02-07 14:22:50 瀏覽:216
一階低通濾波器c語言 發布:2025-02-07 14:22:37 瀏覽:849
電腦的東西為什麼粘貼不到伺服器 發布:2025-02-07 14:21:04 瀏覽:195
手機脫模解壓視頻 發布:2025-02-07 14:20:18 瀏覽:472
密碼多少密碼多少密碼多少密碼 發布:2025-02-07 14:07:30 瀏覽:856
我的世界啟動器電腦伺服器 發布:2025-02-07 14:07:27 瀏覽:483
愛加密深圳科技有限 發布:2025-02-07 14:07:26 瀏覽:86
c語言密碼星號 發布:2025-02-07 14:07:24 瀏覽:800