Java 关于Android Studio中片段的困惑
这是我学习android studio的第二天。 我不知道这里为什么有错误。 请帮帮我Java 关于Android Studio中片段的困惑,java,android,android-fragments,Java,Android,Android Fragments,这是我学习android studio的第二天。 我不知道这里为什么有错误。 请帮帮我 //MainActivity.java public void ChangeFragment(View view) { FragmentManager fragmentManager = getFragmentManager(); FragmentTransaction fragmentTransaction = fragmentManager.beginTransac
//MainActivity.java
public void ChangeFragment(View view) {
FragmentManager fragmentManager = getFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
Fragment2 fragment2 = new Fragment2();
fragmentTransaction.add(R.id.FragmentView, fragment2);
//error is there: "Wrong 2nd argument type. Found: 'com.example.myfirstapp.Fragment2', required: 'android.app.Fragment'"
fragmentTransaction.commit();
}
@
@
//活动\u fragment2.xml
如果您使用的是
android.support.v4.app.Fragment
(您应该使用),那么您需要使用,而不是getFragmentManager()
@
如果我使用getFragmentManager(),我需要使用什么?android.support.v4.app.Fragment是android studio自动生成的(Alt+Enter)在支持片段中有很多很多错误修复,而这些错误修复不会出现在框架片段中。为什么不能使用
getSupportFragmentManager()
?好的,谢谢,我只是按照官方步骤学习。现在我正在寻找关于getSupportFragmentManager()的教程。你知道,一开始一切都很困难。但现在我什么都不懂,所以我可以去看看另一个。毕竟,所有的路都通向罗马……但我真的想知道,我需要用什么?如果我使用getFragmentManger()?再次感谢,正如您所说,我已经成功地调用并使用了片段
//Fragment2.java
import android.support.v4.app.Fragment;
public class Fragment2 extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
final View view = inflater.inflate(R.layout.activity_fragment2, container, false);
Button button1 = (Button) view.findViewById(R.id.button2);
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
TextView text = (TextView) view.findViewById(R.id.textView1);
text.setText("I am a Fragment");
}
});
return view;
}
//activity_fragment2.xml
<LinearLayout
android:id="@+id/FragmentView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
tools:layout_editor_absoluteX="16dp"
tools:layout_editor_absoluteY="16dp">
</LinearLayout>
import android.app.FragmentManager;
import android.app.FragmentTransaction;
FragmentManager fragmentManager = **getFragmentManager()**;
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
import android.app.Fragment;
public class Fragment2 extends Fragment {..}
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
FragmentManager fragmentManager = **getSupportFragmentManager()**;
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
import android.support.v4.app.Fragment;
public class Fragment2 extends Fragment {..}