Android Studio学习问题及解决方法
1. Build Output输出乱码解决方法:Step1:右上角搜索框(快捷键为两次shift),输入 edit custom vm options,点击第一个后选择创建Step2:添加一行配置-Dfile.encoding=UTF-8Step3:重启AndroidStudio2. 错误:不兼容的类型:Fragment1无法转换为FragmentMainActivity.javaimport a
·
1. Build Output输出乱码
解决方法:
Step1:右上角搜索框(快捷键为两次shift),输入 edit custom vm options,点击第一个后选择创建Step2:添加一行配置-Dfile.encoding=UTF-8
Step3:重启AndroidStudio
2. 错误:不兼容的类型:Fragment1无法转换为Fragment
MainActivity.java
import android.app.Activity;
import android.content.res.Configuration;
import android.os.Bundle;
import android.util.Log;
import android.view.Display;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Log.e("Main","onCreate");
if(getResources().getConfiguration().orientation== Configuration.ORIENTATION_LANDSCAPE){
Fragment1 fragment1 = new Fragment1();
getFragmentManager().beginTransaction().replace(R.id.main_layout,fragment1).commit();
}
else{
Fragment2 fragment2 = new Fragment2();
getFragmentManager().beginTransaction().replace(R.id.main_layout,fragment2).commit();
}
}
}
Fragment1.java
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import androidx.fragment.app.Fragment;
public class Fragment1 extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
Log.e("Fragment1","onCreateView");
return inflater.inflate(R.layout.fragment_1,container,false);
}
}
错误原因:MainActivity与Fragment1、Fragment2中导入的包不一致
解决方法:更换Fragment1中的包
import android.app.Fragment;//更改为这个包后与MainActivity.java的一致
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
//import androidx.fragment.app.Fragment;原本Fragment1中导入的包
更多推荐
所有评论(0)