android拖動控制項
A. android studio第一個項目拖動不了控制項,添加代碼報錯,為啥
報什麼錯,如果實在不行,就把它原來的布局代碼刪掉,然後自己重新寫試試
B. Android 多個文本控制項水平移動問題
要在代碼控制,把HorizontalScrollView的TouchEvent傳給ListView
C. android studio 怎麼移動控制項位置
ADB Idea ADB操作快捷菜單,快速清除數據,重啟應用,卸載應用等操作
Android
Annotations 配合Annotation框架快速生成控制項綁定代碼,同Android ButterKnife Zeleny
,本來都是用ButterKnife,生成快速綁定代碼,後面開發的都是Lib庫沒辦法使用ButterKnife只好轉Annotations庫
Android Drawable Importer 做些小應用時媽媽再也不用擔心我找不到圖標了~需要配合google/material-design-icons · GitHub、Android Icons使用,安裝後在設置菜單多出來的選項中設置
Android Parcelable Code Generator 如標題。快速生成Parcelable代碼
D. android studio怎麼移動控制項位置
一樣可以用滑鼠拖動的,不過不建議這樣去做,還是手寫的方便精準快捷。
E. android裡面有沒有可以上下左右流暢拖動的控制項
lz的問題可以用一張圖片來解決,就像地圖應用一樣,有個開源項目,photoview,github上自己找一下。
F. 如何讓安卓控制項向左移動
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 離某元素上邊緣的距離
G. 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();
}
}
H. 在android頁面上為什麼添加的控制項都不能移動
把最外層的容器改為Relativelayout,就可以拖動了。
只是在android上基本不用拖動的方式來布局的,這對你以後沒什麼好處。還是老老實實學習xml布局吧,以後你就知道為什麼拖不可取了。
I. 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 離某元素上邊緣的距離
J. android studio拖控制項報錯
你的自定義控制項只實現了一個參數的構造方法View有三個構造方法123publicView(Contextcontext)publicView(Contextcontext,AttributeSetattrs)publicView(Contextcontext,AttributeSetattrs,intdefStyle)要在布局中使用自定義控制項,控制項必須實現帶參數AttributeSet的構造方法,實例化布局的時候會調用這個方法去實例化控制項,否則就會報你圖上的錯誤另外引用自定義控制項的時候必須用包名.類名的方式,否則也會報錯