今天学习一下安卓的横竖屏的切换
首先,今天我们先设计一个简易版的拳皇游戏。
在AS中新建一个项目,名字随意,我起了一个LifeCycleText。
mainactivity代码如下:
package com.glsite.lifecycletest;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
private TextView mTvBlood;
private int mBlood = 100;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mTvBlood = findViewById(R.id.tv_blood);
}
public void click(View view) {
mBlood -= 7;
if (mBlood > 0) {
mTvBlood.setText("剩余生命值" + mBlood);
} else {
mTvBlood.setText("K.O.YOU WIN");
}
}
}
activity_main代码如下:
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<TextView
android:id="@+id/tv_blood"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="剩余生命值:100"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="148dp"
android:layout_marginLeft="148dp"
android:layout_marginTop="124dp"
android:text="重拳"
android:onClick="click"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/tv_blood" />
</android.support.constraint.ConstraintLayout>
将项目运行到模拟器
我们通过不停出拳,准备KO掉对手,于是我不停的点击重拳按钮
哈哈哈,老夫终于赢了。激动之下,晃了一下手机,手机变横屏了,令人诡异的事情发生了,分数又变成了100,这尼玛。。。。。
出大事了啊,这可咋整。。别急,今天讲的就是横竖屏切换,且听我娓娓道来
我们此时可以在Androidmanifest里添加如下语句(中间的竖线表示或的意思)
android:configChanges="keyboardHidden|orientation"
好了,那我们现在再打开我们的拳皇小游戏。试试看吧。