android 获取坐标[整理]
16lz
2021-01-25
int[] location = new int[2] ;
view.getLocationInWindow(location); //获取在当前窗口内的绝对坐标
view.getLocationOnScreen(location);//获取在整个屏幕内的绝对坐标
location [0]--->x坐标,location [1]--->y坐标
如果在Activity的OnCreate()事件输出那些参数,是全为0,要等UI控件都加载完了才能获取到这些。
private ViewFlipper flipper;
@Override
public void onCreate(Bundle savedInstanceState) {
Log.i("demo", "onCreate");
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
flipper = (ViewFlipper)findViewById(R.id.flipper);
Log.d("demo", "left:" + flipper.getLeft());
Log.d("demo", "right:" + flipper.getRight());
Log.d("demo", "Top:" + flipper.getTop());
Log.d("demo", "Bottom:" + flipper.getBottom());
Button btn = (Button)findViewById(R.id.button2);
btn.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
Log.i("demo", "onClick");
Log.d("demo", "left:" + flipper.getLeft());
Log.d("demo", "right:" + flipper.getRight());
Log.d("demo", "Top:" + flipper.getTop());
Log.d("demo", "Bottom:" + flipper.getBottom());
}
});
}
更多相关文章
- 【Android】重写原生控件及使用
- android shader
- Android(安卓)图片加载导致内存占用过大的问题
- Android(安卓)点击事件冲突之拦截父控件事件 交给子控件处理
- ListView 实现像Android(安卓)Market那样 分页加载 滚动加载
- Android实现ListView数据动态加载的方法
- android 百度地图 三、气泡显示
- Android自定义进度条-带文本(文字进度)的水平进度条(ProgressBar
- Android(安卓)onMeasure(widthSpec, heightSpec)