Android 当我旋转手机时,活动屏幕不旋转
我在@gnobal上使用了这段代码,效果非常好。但我的问题是,我发现当我应用Theme.Transparent时,当我旋转手机时,活动不会进入横向模式 主题:Android 当我旋转手机时,活动屏幕不旋转,android,android-activity,screen-orientation,Android,Android Activity,Screen Orientation,我在@gnobal上使用了这段代码,效果非常好。但我的问题是,我发现当我应用Theme.Transparent时,当我旋转手机时,活动不会进入横向模式 主题: <style name="Theme.Transparent" parent="android:Theme.Dialog"> <item name="android:windowIsTranslucent">true</item> <item name="android:wind
<style name="Theme.Transparent" parent="android:Theme.Dialog">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowIsFloating">true</item>
<item name="android:backgroundDimEnabled">false</item>
</style>
为什么它不能旋转?我试图将windowIsFloating更改为false,并在没有运气的情况下更改其他参数。您可以查看此项
android:screenOrientation="sensor"
or
android:screenOrientation="user"
将其中一个添加到清单
。
如果您希望避免重新创建活动android:configChanges=“keyboardHidden | orientation | screenSize”,请不要忘记在清单中将其添加到应用程序中
如果将android:windowIsTranslucent
或android:windowIsFloating
设置为true
旋转通知被禁用(只要您不强制使用android:screenOrientation=“sensor”)启用它们。我使用android:windowIsTransluent
创建主题,旋转停止。为了打开它,我做了一个实验,为应用程序、主题和第一个活动添加了screenOrientation=“sensor”
。仅为第一个活动添加轮换为应用程序中的所有活动启用轮换。我也遇到了同样的问题。
在执行任何解决方案之前,首先确保已启用旋转功能,然后检查可旋转的主屏幕,如果没有,请重新启动手机,问题将得到解决 谢谢你,K0sh,这解决了问题。我不明白为什么在一个正常的活动中,你不必激活那个属性,但使用那个新的主题就可以了。无论如何,再次感谢你!这对我不起作用:(不知道为什么,这是一个平板电脑硬件,我正在与Jellybean一起使用,当我找到这个答案时,我很高兴,但出于某种原因,当我告诉它时,平板电脑仍然没有使用传感器的方向(我还有android:windowIsTranslucent
和android:windowIsFloating
设置为true)这是一种让开发者远离Android平台的东西。你需要花几个月的时间来掌握Android的所有怪癖。问题是,即使用户只设置了肖像模式,屏幕也会变亮……路易斯·马蒂布·罗梅拉:你找到定向停止使用上述定义的t的原因了吗血红素?我也面临同样的问题,但想知道原因
import android.app.Activity;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ImageView;
import com.meapp.Utilities;
public class Imagen_activity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_imagen_examen);
Bundle b = getIntent().getExtras();
String imagen = b.getString("imagen_name");
int id = getResources().getIdentifier(imagen, "drawable", getPackageName());
ImageView imageView = (ImageView) findViewById(R.id.imageViewImagen);
// Determinacion tamaño fuente
BitmapFactory.Options bitmapOpt = new BitmapFactory.Options();
bitmapOpt.inJustDecodeBounds = true;
BitmapFactory.decodeResource(getResources(), id, bitmapOpt);
int[] screen_dim = Utilites.verDimensionesPantalla(this);
// más eficiente si se usa una potencia de 2
imageView.setImageBitmap(Utilities
.decodeSampledBitmapFromResource(getResources(), id,
screen_dim[0], screen_dim[1], true));
imageView.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
cerrarImagen();
}
});
}
public void cerrarImagen() {
((Activity) this).finish();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.imagen_examen_, menu);
return true;
}
}
android:screenOrientation="sensor"
or
android:screenOrientation="user"