다른 기기의 높이 및 너비를 알아야하는 앱에서 작업 해 왔습니다. 높이와 너비에 대한 코드를 제거하면 앱이 충돌하는 코드를 포함하면 앱이 작동합니다.다른 기기의 높이 및 너비 찾기
코드에 무엇이 잘못된지 제안 해 주실 수 있습니까? 여기
코드입니다 :public class Newone extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_newone);
}
final Context context = this;
public String cntry = "";
int w= getWindowManager().getDefaultDisplay().getWidth();
int h = getWindowManager().getDefaultDisplay().getHeight();
DisplayMetrics metrics = context.getResources().getDisplayMetrics();
int w = metrics.widthPixels;
int h = metrics.heightPixels;
@Override
public boolean onTouchEvent(MotionEvent event) {
MotionEvent object holds X-Y values
if(event.getAction() == MotionEvent.ACTION_DOWN) {
String text = "You click at x = " + event.getX() + " and y = " + event.getY();
//Toast.makeText(this, text, Toast.LENGTH_LONG).show();
if((event.getX()>((w/1280)*850)) && (event.getX()<((h/752)*900)) && (event.getY()>((w/1280)*380)) && (event.getY()<((h/752)*450)))
if((event.getX()>850) && (event.getX()<900) && (event.getY()>380) && (event.getY()<450)) {
Toast.makeText(this, text, Toast.LENGTH_LONG).show();
display(cntry);
}
if((event.getX()>280) && (event.getX()<400) && (event.getY()>200) && (event.getY()<300)) {
//Toast.makeText(this, text, Toast.LENGTH_LONG).show();
cntry = "US";
display(cntry);
}
if((event.getX()>900) && (event.getX()<1200) && (event.getY()>500) && (event.getY()<650))
}
return super.onTouchEvent(event);
}
private void display(final String cntry) {
final Dialog dialog = new Dialog(context);
dialog.show();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_newone, menu);
return true;
}
}
귀하의 logcat plz을 게시하십시오. – user1417127
onCreate 메서드 내에서 너비와 높이를 계산하는 코드를 사용합니다. – Kamal