android坐標
㈠ android屏幕坐標怎麼算和解析度有關系的嗎
屏幕坐標都是固定的,手機豎屏左上角坐標為(0,0)。
(0 ,0),(Xmax,0 )
(Ymax,0),(Xmax,Ymax)
屏幕解析度是屏幕圖像的精密度,是指顯示器所能顯示的像素有多少。由於屏幕上的點、線和面都是由像素組成的,顯示器可顯示的像素越多,畫面就越精細,同樣的屏幕區域內能顯示的信息也越多,所以解析度是個非常重要的性能指標之一。
㈡ android開發中怎麼獲取當前位置的坐標
GPS 精準但是慢,Android原生的
基站定位 手機到至少三個基站的位置來進行定位,原理是信號的衰減。 需要基站的所有位置信息,即需要伺服器支持
AGPS 對GPS的一種方式,基站定位配合GPS,實現快速定位。
第三方定位,網路定位、高德定位等,根據其提供的SDK實現
㈢ android 坐標象限怎麼分
第一象限在右上角,如圖所示: 【象限】: 又稱象限角。在應用數學里,平面直角坐標系裡的橫軸和縱軸所劃分的四個區域,分為四個象限。象限以原點為中心,x,y軸為分界線。右上的稱為第一象限,左上的稱為第二象限,左下的稱為第三象限,右下的稱為第四象限。坐標軸上的點不屬於任何象限。
㈣ 我想實現 在android中根據坐標(x,y)在地圖上畫點的功能,應該怎麼實現呢
參考網路地圖API
http://dev..com/wiki/imap/index.php?title=Android%E5%B9%B3%E5%8F%B0/%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97
㈤ 在android中如何改變控制項的坐標(例如一個button,我想讓它向右移動20dp)
RelativeLayout.LayoutParams ballLp = (android.widget.RelativeLayout.LayoutParams)b.getLayoutParams();
ballLp.leftMargin = 從你控制項的基礎上加20像素;
ballLp.topMargin = 不變:
b.setLayoutParams(ballLp);
這沒有移動的動畫,只是直接跳到次位置上
要有移動的話可以加動畫,或者讓這段代碼執行20次,每次leftMargin增加1就可以了。
㈥ android 代碼中如何設置button坐標 同時又如何得到現有button的坐標
你可以直接在繪畫界面先大概將你的button按鈕放好,然後回到代碼界面,找到button的坐標,微調
一般現有的button的坐標是根據的布局來看,例如你選得是線性布局,要麼是橫著排過來,要麼就是豎著,看你的線性布局的方向屬性是什麼!
㈦ android已知兩點坐標怎麼畫直線
在android的體系中,畫圖用的是Canvas和Paint來實現的,你可以調用裡面的方法來畫任何你想要的圖形。
㈧ Android開發中,長按事件怎麼獲得屏幕坐標點
對於很多游戲使用屏幕控制一般需要考慮長按事件,比如在動作類的游戲中需要長按發射武器,結合Android Button模型,我們實現一個帶圖片的Button的長按,為了更清晰的顯示原理,Android開發網這里使用ImageButton作為基類.
public class RepeatingImageButton extends ImageButton {
private long mStartTime; //記錄長按開始
private int mRepeatCount; //重復次數計數
private RepeatListener mListener;
private long mInterval = 500; //Timer觸發間隔,即每0.5秒算一次按下
public RepeatingImageButton(Context context) {
this(context, null);
}
public RepeatingImageButton(Context context, AttributeSet attrs) {
this(context, attrs, android.R.attr.imageButtonStyle);
}
public RepeatingImageButton(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
setFocusable(true); //允許獲得焦點
setLongClickable(true); //啟用長按事件
}
public void setRepeatListener(RepeatListener l, long interval) { //實現重復按下事件listener
mListener = l;
mInterval = interval;
}
@Override
public boolean performLongClick() {
mStartTime = SystemClock.elapsedRealtime();
mRepeatCount = 0;
post(mRepeater);
return true;
}
@Override
public boolean onTouchEvent(MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_UP) { // 本方法原理同onKeyUp的一樣,這里處理屏幕事件,下面的onKeyUp處理Android手機上的物理按鍵事件
removeCallbacks(mRepeater);
if (mStartTime != 0) {
doRepeat(true);
mStartTime = 0;
}
}
return super.onTouchEvent(event);
}
//處理導航鍵事件的中鍵或軌跡球按下事件
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
switch (keyCode) {
case KeyEvent.KEYCODE_DPAD_CENTER:
case KeyEvent.KEYCODE_ENTER:
super.onKeyDown(keyCode, event);
return true;
}
return super.onKeyDown(keyCode, event);
}
//當按鍵彈起通知長按結束
@Override
public boolean onKeyUp(int keyCode, KeyEvent event) {
switch (keyCode) {
case KeyEvent.KEYCODE_DPAD_CENTER:
case KeyEvent.KEYCODE_ENTER:
removeCallbacks(mRepeater); //取消重復listener捕獲
if (mStartTime != 0) {
doRepeat(true); //如果長按事件累計時間不為0則說明長按了
mStartTime = 0; //重置長按計時器
}
}
return super.onKeyUp(keyCode, event);
}
private Runnable mRepeater = new Runnable() { //在線程中判斷重復
public void run() {
doRepeat(false);
if (isPressed()) {
postDelayed(this, mInterval); //計算長按後延遲下一次累加
}
}
};
private void doRepeat(boolean last) {
long now = SystemClock.elapsedRealtime();
if (mListener != null) {
mListener.onRepeat(this, now - mStartTime, last ? -1 : mRepeatCount++);
}
}
下面是重復Button Listener介面的定義,調用時在Button中先使用setRepeatListener()方法實現RepeatListener介面
public interface RepeatListener {
void onRepeat(View v, long ration, int repeatcount); //參數一為用戶傳入的Button對象,參數二為延遲的毫秒數,第三位重復次數回調。
}
}
本類大家可以直接在自己的View中implements實現RepeatListener介面即可.
㈨ 安卓:如何獲取屏幕中一個View的坐標
getLocationOnScreen ,計算該視圖在全局坐標系中的x,y值,這個值是要從屏幕頂端算起,也就是索包括了通知欄的高度。
getLocationInWindow ,計算該視圖在它所在的widnow的坐標x,y值, 非常准確!
getLeft , getTop, getBottom, getRight, 這一組是獲取相對在它父親里的坐標。
㈩ android通過坐標得到圖片位置
如果你是用imageview載入的圖片,可以用這個imageview的對象調用getX()和getY()來獲取坐標