㈠ android怎麼獲取bitmap左上角坐標
用ImageView來裝載這個bitmap並且填滿整個ImageView,再用imageview對象來獲取坐標值,getX(),getY(),獲取的就是左上角的坐標值
㈡ android中繪圖,坐標默認用的是什麼單位
默認單位是px也就是像素,一般不推薦用px。因為跟設備有關系,你可以使用TypedValue這個對象.
下面是這兩個的轉換函數,您可以先把像素轉換成dp
java">publicclassDensityUtil{
/**
*根據手機的解析度從dp的單位轉成為px(像素)
*/
publicstaticintdip2px(Contextcontext,floatdpValue){
finalfloatscale=context.getResources().getDisplayMetrics().density;
return(int)(dpValue*scale+0.5f);
}
/**
*根據手機的解析度從px(像素)的單位轉成為dp
*/
publicstaticintpx2dip(Contextcontext,floatpxValue){
finalfloatscale=context.getResources().getDisplayMetrics().density;
return(int)(pxValue/scale+0.5f);
}
}
一、px
像素,是屏幕上顯示數據的最基本的點。
二、dpi
dpi(Dots Per Inch):每英寸點數,也可稱為像素密度,即屏幕對角線像素值÷英寸值
比如480x800解析度4.0英寸的手機計算的DPI=
三、dp
dp(與dip相同):在每英寸160點的顯示器上,1dp = 1px,即px = dp(dpi/160)
假設兩塊屏幕尺寸一樣,那屏幕一的dpi值是右邊的兩倍,如果屏幕一dpi為160,那屏幕二dpi即為320,設置160dp的情況下
屏幕一:160px=160dp(160dpi/160)
屏幕二:320px=160dp(320dpi/160)
根據關系,可得出:
屏幕一控制項長度為160px,屏幕二控制項長度為320px,讓控制項長度適應不同屏幕大小,用dp很合適。
四、sp
sp(scaled pixels) 通常用於指定字體大小,當用戶修改手機顯示字體時,字體大小會隨之改變
對於UI布局,要使用dip/dp作為單位,對應字體要是有sp作為單位,盡量少用px作為單位。
註:解析度與屏幕大小沒有關系,屏幕大小是物理外觀,而解析度則是顯示能力。
如果您對回答滿意,請關注一下姓名中的微博,謝謝。
㈢ android 如何模擬 自動點擊某個定點坐標
在Android中有時需要模擬某一個View的touch事件,來達到對該View的功能相應處理的簡單化,因為你只需要模擬對該View的touch事件,便能沿著原來touch的事件相應走下去,不需要添加任何代碼,你可以這么做:
從代碼可以看出這里的重點是需要知道兩個點:一是你模擬點擊的坐標,在這里就是x和y,二就是你需要設置響應這個點擊事件的View,這里是一個SeekBar,這個點擊的坐標一般也選在這個需要響應View上,我的使用場景是在遙控器的確定鍵的相應上,如果還有新的應用場景,請多交流哦。
㈣ android 百度地圖怎麼將獲取到的地址轉換為坐標
不知道您說的是不是根據地址信息獲得相應的經緯度,如果是的話,我之前做的項目裡面寫了這樣一個方法,希望能幫到您,謝謝。** * 根據傳入的字元串獲取到相應的經緯度信息 * */ public GeoPoint getGeoPointBystr(Stringstr) { GeoPoint gpGeoPoint = null; if (str!=null) { Geocoder gc = newGeocoder(InServeDetailActivity.this, Locale.CHINA); List addressList =null; try {addressList =gc.getFromLocationName(str, 1); if (!addressList.isEmpty()) { Address address_temp =addressList.get(0); //計算經緯度 doubleLatitude=address_temp.getLatitude()*1E6; doubleLongitude=address_temp.getLongitude()*1E6;System.out.println("經度:"+Latitude);System.out.println("緯度:"+Longitude); //生產GeoPoint gpGeoPoint = newGeoPoint((int)Latitude, (int)Longitude); } } catch (Exception e) { e.printStackTrace(); } } return gpGeoPoint; }如果還有問題,歡迎您繼續追問。謝謝。android 網路地圖怎麼將獲取到的地址轉換為坐標
㈤ 在android中如何改變控制項的坐標(例如一個button,我想讓它向右移動20dp)
RelativeLayout.LayoutParams ballLp = (android.widget.RelativeLayout.LayoutParams)b.getLayoutParams();
ballLp.leftMargin = 從你控制項的基礎上加20像素;
ballLp.topMargin = 不變:
b.setLayoutParams(ballLp);
這沒有移動的動畫,只是直接跳到次位置上
要有移動的話可以加動畫,或者讓這段代碼執行20次,每次leftMargin增加1就可以了。
㈥ android屏幕坐標怎麼算和解析度有關系的嗎
屏幕坐標都是固定的,手機豎屏左上角坐標為(0,0)。
(0 ,0),(Xmax,0 )
(Ymax,0),(Xmax,Ymax)
屏幕解析度是屏幕圖像的精密度,是指顯示器所能顯示的像素有多少。由於屏幕上的點、線和面都是由像素組成的,顯示器可顯示的像素越多,畫面就越精細,同樣的屏幕區域內能顯示的信息也越多,所以解析度是個非常重要的性能指標之一。
㈦ 安卓手機怎麼查看某地點的GPS坐標啊或者輸入坐標顯示位置
安卓手機無法直接察看GPS定位坐標,有地圖作為顯示平台時,可以在圖上顯示定位的直觀位置(任意一款地圖都可以滿足該項需要)。但電子地圖一般都不支持顯示經緯度的數值,要看的話需要另外安裝軟體,如GPS TEST等
㈧ android 怎麼樣獲取滑鼠點擊的 坐標
public boolean onTouchEvent(android.view.MotionEvent event) { int x = event.getX(); int y = event.getY(); 多點觸摸時 假如是第i個點 int x = event.getX(i); int y = event.getY(i); 坐標就是 P(x,y) }
㈨ android開發中怎麼獲取當前位置的坐標
Android中獲取當前位置的三種方式:
1.GPS定位
獲取GPS的Location Provider;將此Provider傳入到requestLocationUpdates()方法,讓Android系統獲知搜索位置方式;創建實現了GpsStatus.Listener介面的對象,重寫onGpsStatusChanged()方法,向LocationManager添加次監聽器
2.基站定位
此類位置的獲取有賴於手機無線通訊信號,當手機處在信號覆蓋范圍內,手機可以獲得該區域(即通訊術語中的「小區」)的識別號。因為這些識別號是惟一的,因此可以將識別號和地理坐標對應起來,因此根據識別號就可以知道地理位置。但是誤差比較大。
在Android當中,大部分和通訊網路相關的信息都需要經過一項系統服務,即TelephoneManager來獲得。
3.網路定位(wife定位)
其原理是首先收集每個WIFI無線接入點的位置,對每個無線路由器進行唯一的標識,在資料庫中註明這些接入點的具體位置。 使用時,一旦發現有WI-FI接入點,則進入到數據中查看匹配的記錄,進而得到位置信息。
WIFI定位主要取決於節點(node)的物理地址(mac address)。與提供TelephoneManager一樣,Android也提供了獲取WIFI信息的介面:WifiManager。