这是一个更开放的问题,指出我正确的方向。 我有一个带有画布的Framelayout。我要做的是让用户触摸Canvas,此时会显示一个Dialog,显示触摸下面的Zoomed版本。像放大镜一样
我已经创建了一个自定义Dialog,所以我们正在寻找的是如何将画布传递给Dialog,然后将其放大。
重新定义我正在寻找的是创建用户触摸的放大效果
感谢您的帮助
一些代码我所做的事情
@Override
public void onCreate(Bundle savedInstanceState) {
//
mainFrame = (FrameLayout) findViewById(R.id.main_view_framelayout);
drawView = new DrawView(this); // Draws an Image onto a Canvas
mainFrame.addView(drawView);
mainFrame.setOnTouchListener(new View.OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
int action = event.getAction();
switch (action) {
case MotionEvent.ACTION_DOWN:
hitX = event.getX();
hitY = event.getY();
// Add Magifiing Glass or Pass Zoomed Image to a Dialog
break;
case MotionEvent.ACTION_UP:
// Dismiss the Zoomed Image
break;
}
});
答案 0 :(得分:-1)
我想你想要全屏对话。以下代码适用于我:
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setContentView(R.layout.mydialog2);
getWindow().setLayout(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);