如何以简单的方式停止我的整个应用程序?(所有活动,服务,线程等等,只需要一切)应该调用生命周期回调(特别是onStop()和onDestroy()).
谷歌建议以下可能的解决方案:
但是可以从外部访问此方法,如:
//Getting all activityies, how?
//For each gotten activity
AcitvityName.finish();
or via or via getParent().finish(); ?
Run Code Online (Sandbox Code Playgroud)
这对我没有帮助:退出Android应用程序的最佳方法?
FD
无论当前的屏幕方向(横向或纵向),我都希望获得当前的磁性方向.
我找到了这个例子,但它不是独立的方向,对吧?而这也帮不了我.我也读过http://android-developers.blogspot.de/2010/09/one-screen-turn-deserves-another.html.
这是我目前采用的方法,我不想使用(短):
mSensorManager.getDefaultSensor(Sensor.TYPE_ORIENTATION);
private SensorEventListener sensorEventListener = new SensorEventListener() {
public void onSensorChanged(SensorEvent event) {
/* Get measured value */
float current_measured_bearing = (float) event.values[0];
/* Compensate device orientation */
switch (((WindowManager) getSystemService(WINDOW_SERVICE))
.getDefaultDisplay().getRotation()) {
case Surface.ROTATION_90:
current_measured_bearing = current_measured_bearing + 90f;
break;
case Surface.ROTATION_180:
current_measured_bearing = current_measured_bearing - 180f;
break;
case Surface.ROTATION_270:
current_measured_bearing = current_measured_bearing - 90f;
break;
}
Run Code Online (Sandbox Code Playgroud)
但最后一部分肯定是错的!getRotationMatrix()在这种情况下,如何正确使用更新的方法?(方向独立)或者我只需要event.values[]根据旋转矩阵使用数组的其他值?或者我需要'重新映射坐标'?那么,是实现这一目标的正确方法是什么?
我正在为具有360°屏幕旋转和API Level 11+的设备开发.
我知道这些问题经常被问到,但我不能将他们的答案转移到我的问题上.
我正在尝试获取XML布局文件中定义的ImageView实例:
<RelativeLayout
android:id="@+id/visual_compass_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/output_container" >
<ImageView
android:id="@+id/visual_compass"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:contentDescription="Compass"
android:scaleType="fitStart"
android:src="@drawable/compass_rose" />
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
但我总是得到运行时错误:
... java.lang.ClassCastException: android.widget.RelativeLayout cannot be
cast to android.widget.ImageView ... at net.example.MainActivity.onCreate
(MainActivity.java:57)
Run Code Online (Sandbox Code Playgroud)
线"57"是那一个:
compassView = (ImageView) findViewById(R.id.visual_compass);
Run Code Online (Sandbox Code Playgroud)
我无法弄清楚为什么会抛出这个错误; 我没有看到这段代码的问题.还有谁知道吗?
谢谢Felix D.
java android runtime-error classcastexception android-layout
我正在尝试计算long存储在数组中的许多(超过200个)(原始类型)值的平均值。通常,您将所有数字相加并除以值的数量。但是在这种情况下这是不可能的,因为Java中没有原始数据类型能够保存如此大量的数据,不是吗?将java.math.BigInteger在这里帮助?
我的目标是使用元素周期表(或列表)来获取有关Java中特定元素的信息.我想通过原子序数和符号进行搜索(但转换应该很简单).
我在这个JQuery插件中找到了这些信息.但它存储为JSON文件.
看起来硬编码信息是最有效的(因为它不会经常更改并且由于性能原因),但是如何将JSON转换为硬编码enum?