当前位置:编程学习 > wap >>

大家帮帮忙看看我这个例子图片怎么显示不出来啊

 我想做个图片自由在屏幕里游走的效果 ,可是图片不显示,这是为什么呀?
public class AutoMove extends Activity {
// public static int count=0;
private ImageView im;
private Handler handler;
int dx=1,dy=1,left=0,top=0;
int getWidth,getHeight;
private  boolean isRuning=true;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
      //  setContentView(new Move(this));
        setContentView(R.layout.main);
    
        im=(ImageView)findViewById(R.id.im);
        im.setBackgroundResource(R.drawable.no2);
        handler=new Handler();
        new Thread(this).start();
        DisplayMetrics dm=new DisplayMetrics();
        getWindowManager().getDefaultDisplay().getMetrics(dm);
        getHeight=dm.heightPixels;
        getWidth=dm.widthPixels;
        System.out.println("3");
    }
public void run() {
// TODO Auto-generated method stub
while(isRuning){
dx=left<0||(left+im.getWidth())>getWidth?-dx:dx;
dy=top<0||(top+im.getHeight())>getHeight?-dy:dy;
left+=dx;
top+=dy;
// System.out.println(left);
handler.post(new Runnable() {


public void run() {
// TODO Auto-generated method stub
im.setLayoutParams(new AbsoluteLayout.LayoutParams(im.getWidth(), im.getHeight(),left, top));
System.out.println(left);
}
});
try{
Thread.sleep(5000);
}catch(InterruptedException e){
e.printStackTrace();
}
}  
}
} --------------------编程问答-------------------- public class AutoMove extends Activity implements Runnable {
// public static int count=0;
private ImageView im;
private Handler handler;
int dx=1,dy=1,left=0,top=0;
int getWidth,getHeight;
private  boolean isRuning=true;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
      //  setContentView(new Move(this));
        setContentView(R.layout.main);
    
        im=(ImageView)findViewById(R.id.im);
        im.setBackgroundResource(R.drawable.no2);
        handler=new Handler();
        new Thread(this).start();
        DisplayMetrics dm=new DisplayMetrics();
        getWindowManager().getDefaultDisplay().getMetrics(dm);
        getHeight=dm.heightPixels;
        getWidth=dm.widthPixels;
        System.out.println("3");
    }
public void run() {
// TODO Auto-generated method stub
while(isRuning){
dx=left<0||(left+im.getWidth())>getWidth?-dx:dx;
dy=top<0||(top+im.getHeight())>getHeight?-dy:dy;
left+=dx;
top+=dy;
// System.out.println(left);
handler.post(new Runnable() {


public void run() {
// TODO Auto-generated method stub
im.setLayoutParams(new AbsoluteLayout.LayoutParams(im.getWidth(), im.getHeight(),left, top));
System.out.println(left);
}
});
try{
Thread.sleep(5000);
}catch(InterruptedException e){
e.printStackTrace();
}
}  
}
} 上面的代码考错了  是这个 --------------------编程问答-------------------- public void run() {
// TODO Auto-generated method stub 
im.setLayoutParams(new AbsoluteLayout.LayoutParams(im.getWidth(), im.getHeight(),left, top));
System.out.println(left);
}
该方法下面的打印方法正常,每隔5秒打印一次,可是就是不显示图片,请高手帮忙
补充:移动开发 ,  Android
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,