Tag: android

Android DisplayMetrics在ICS上以像素为单位返回不正确的屏幕大小

我试过这个…. DisplayMetrics metrics = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(metrics); int fullscreenheight = metrics.heightPixels; int fullscreenwidth = metrics.widthPixels; 和…. Display display = getWindowManager().getDefaultDisplay(); Point size = new Point(); display.getSize(size); int width = size.x; int height = size.y; Gnex的显示器是720×1280。 宽度/高度的返回结果(取决于当然的方向)从来不是1280.我认为这可能与冰淇淋三明治中的屏幕导航栏有关,所以我隐藏: getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION); …然后启动一个连续logging屏幕尺寸高度/宽度的线程。 即使在ICS导航栏完全消失后……屏幕尺寸也不会报告1280值。 我会得到这样的数字: width = 720 height = 1184 如何在ICS中获得真正的设备屏幕分辨率? 我需要这个值的原因是因为我的应用程序正在播放video,并且当设备处于横向方向时,我希望video占据整个屏幕。 现在我知道你在想什么,为什么不给video视图的高度/宽度值“match_parent”呢? 原因是因为我的video有多个长宽比,我希望能够根据屏幕的整个宽度来计算正确的video大小。

内存不足错误ImageView问题

我是新的Android编程,我得到一个错误,说我的应用程序内存不足,这个例子,我从一本书复制,它正在与小图片分辨率,但是当我添加了一些更大的分辨率的图片的内存错误出现,可能是我做了一些错误的事情,或者只是不知道所有我应该与图像工作,如果有人知道我应该改变,以便这个错误不会再出现,请帮助。 谢谢您期待! 源代码: public class ImageViewsActivity extends Activity { //the images to display Integer[] imageIDs={ R.drawable.pic1, R.drawable.pic2, R.drawable.pic3, R.drawable.pic4, R.drawable.pic5 }; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); final ImageView iv=(ImageView) findViewById(R.id.image1); Gallery gallery=(Gallery) findViewById(R.id.gallery); gallery.setAdapter(new ImageAdapter(this)); gallery.setOnItemClickListener(new OnItemClickListener(){ public void onItemClick(AdapterView<?> parent, View v, […]

将方向存储到一个数组 – 并进行比较

我想要实现以下内容: 我希望用户能够使用陀螺仪“logging”iPhone的移动。 此后,用户应该能够复制相同的动作。 我使用以下方法提取音高,滚动和偏航: [self.motionManager startDeviceMotionUpdatesToQueue:[NSOperationQueue currentQueue] withHandler: ^(CMDeviceMotion *motion, NSError *error) { CMAttitude *attitude = motion.attitude; NSLog(@"pitch: %f, roll: %f, yaw: %f]", attitude.pitch, attitude.roll, attitude.yaw); }]; 我想我可以将这些值存储到一个数组,如果用户在logging模式。 而当用户试图复制那个动作时,我可以将复制的动作数组与所logging的动作数组进行比较。 问题是,我怎样才能巧妙地比较两个数组? 他们将永远不会有完全相同的价值观,但他们可以有点相同。 我是否在正确的轨道上? 更新:我认为,也许阿利斯使用DTW的答案可能是我在这里的正确方法。 但是我不是那么聪明(显然),所以如果任何人能够帮助我比较arrays的第一步,我会是一个快乐的人! 谢谢!

如何强制操作栏溢出图标显示

我想强制溢出图标始终显示在操作栏(假设有溢出项目)。 在带有菜单button的模型上,有时不会出现溢出图标,用户必须点击设备菜单button以获取其余的操作菜单项。 用户不断抱怨。 请注意,对于上下文菜单,不pipe设备是否具有内置的菜单button,溢出图标总是显示。 我意识到强制溢出图标出现在操作栏将重复“物理”的function。 您可能会认为违反了Androiddevise准则。 在我看来,虽然,用户赢了。 他们说这很混乱,我相信他们是对的。

使用cancel() – Android从AlarmManager中删除闹钟

我试图用两种不同的方法创build和删除报警,这两种方法在应用程序中的不同时刻都被调用。 逻辑。 但是,当我调用AlarmManager的cancel()方法时,警报不会被删除。 这是我的addAlarm()方法: Intent intent = new Intent(PROX_ALERT_INTENT); intent.putExtra("ALERT_TIME", alert.date); intent.putExtra("ID_ALERT", alert.idAlert); intent.putExtra("TITLE", alert.title); intent.putExtra("GEO_LOC", alert.isGeoLoc); PendingIntent pendingIntent = PendingIntent.getBroadcast(mContext,alert.idAlert, intent, PendingIntent.FLAG_CANCEL_CURRENT); AlarmManager alarmManager = (AlarmManager) mContext .getSystemService(Context.ALARM_SERVICE); Calendar calendar = Calendar.getInstance(); calendar.setTime(alert.date); alarmManager.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), pendingIntent); Log.e("ADD ALERT – WithoutGeoLoc – ",alert.toString()); 这是我的deleteAlarm()方法: AlarmManager alarmManager = (AlarmManager) mContext .getSystemService(Context.ALARM_SERVICE); Intent intent = new Intent(PROX_ALERT_INTENT); […]

是否可以在PopupMenu中显示图标?

我非常喜欢3.0版本中的新PopupMenu,但是我不能在菜单项旁边显示任何图标。 我正在从下面的.xml中扩充菜单: <item android:id="@+id/menu_delete_product" android:icon="@drawable/sym_action_add" android:title="delete" android:showAsAction="ifRoom|withText" /> <item android:id="@+id/menu_modify_product" android:icon="@drawable/sym_action_add" android:title="modify" android:showAsAction="ifRoom|withText" /> <item android:id="@+id/menu_product_details" android:icon="@drawable/sym_action_add" android:title="details" android:showAsAction="ifRoom|withText" /> 有了这个代码: image.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { PopupMenu pop = new PopupMenu(getActivity(), v); pop.getMenuInflater().inflate(R.menu.shelves_details_menu, pop.getMenu()); pop.show(); } }); 我不能让图标出现,我错过了什么?

Android RuntimeException:无法实例化服务

我想创build一个服务,将运行在一个单独的线程(而不是在UI线程),所以我实现了一个类将扩展IntentService。 但是我没有运气。 这是代码。 public class MyService extends IntentService { public MyService(String name) { super(name); // TODO Auto-generated constructor stub } @Override public IBinder onBind(Intent arg0) { // TODO Auto-generated method stub return null; } @Override public void onCreate() { // TODO Auto-generated method stub super.onCreate(); Log.e("Service Example", "Service Started.. "); // pushBackground(); } @Override public […]

如何更改SearchView上的默认图标,以在Android上的操作栏中使用?

我在自定义SearchView中的search图标时遇到了一些麻烦。 在我看来,图标可以在Item属性中更改,对吧? 只要检查下面的代码 有人能告诉我我做错了什么吗? 这是我正在使用的菜单,我的自定义search图标icn_lupa 。 但是,当我运行的应用程序,我总是得到默认的search图标… <menu xmlns:android="http://schemas.android.com/apk/res/android"> <item android:id="@+id/menu_search" android:title="@string/menu_search" android:icon="@drawable/icn_lupa" android:showAsAction="always" android:actionViewClass="android.widget.SearchView" /> </menu> 提前致谢。

如何检测设备是Android手机还是Android平板电脑?

我有两个Android平板电脑和Android手机应用程序。 对于平板电脑应用程序,我设置了android:minSdkVersion="11" 。 但是现在像Galaxy S3这样的Android手机拥有Android 4.0.4版本,因此S3用户可以从Google Play商店下载我的平板电脑应用程序。 我想警告手机用户在安装平板电脑应用程序时下载手机应用程序。 平板电脑用户在运行手机应用程序时也会下载平板电脑应用程序 有没有简单的方法来检测设备types? 编辑: 我find了这个链接的解决scheme。 在清单文件中,您可以声明手机和平板电脑的屏幕function,然后Google Play决定手机和平板电脑的下载权限。

Android应用程序closures时,Android服务停止

我从我的主要Android活动中启动一项服务,如下所示: final Context context = base.getApplicationContext(); final Intent intent = new Intent(context, MyService.class); startService(intent); 当我通过从最近的应用程序列表中滑出来closures活动页面时,该服务停止运行并在一段时间后重新启动。 由于我的应用程序需求,我无法使用持续服务。 我如何使服务不重新启动或closures,只是继续在应用程序退出运行?