如何在 Android studio 中将 activity 转换为片段
How to convert an activity to fragment in Android studio
谁能告诉我该怎么做,或者谁能帮我把这个 activity 改成碎片。
我现在在编码方面的经验很少,所以我自己做不到。
public class SplashActivity extends AppCompatActivity {
FirebaseAuth auth;
FirebaseUser user;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash);
auth=FirebaseAuth.getInstance ();
user=auth.getCurrentUser ();
new Handler( ).postDelayed (new Runnable () {
@Override
public void run() {
if (user !=null)
{
startActivity ( new Intent( SplashActivity.this,HomeActivity.class ) );
}
else
{
startActivity ( new Intent ( SplashActivity.this,Login.class ) );
}
finish ();
}
},1500 );
}
}
我将从了解它们的生命周期(activity 和片段)开始。然后我们可以很好地了解将代码从 activity 中的 onCreate() 移动到 Fragment 中的 onViewCreated() 的位置。另请注意,activity 扩展了 AppCompatActivity,而 Fragment 扩展了 Fragment class。有了这两个观察结果,我们现在可以进行如下操作。请注意布局的重命名和 class 由于从 activity 更改为 class。
class SplashFragment extends Fragment {
private FirebaseAuth auth;
private FirebaseUser user;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
auth = FirebaseAuth.getInstance ();
user = auth.getCurrentUser ();
return inflater.inflate(R.layout.fragment_splash, container, false);
}
@Override
public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
new Handler().postDelayed (new Runnable () {
@Override
public void run() {
//Do your logic here.
}
}, 1500);
}
}
参考资料:
片段生命周期:https://developer.android.com/guide/fragments/lifecycle
片段实现:https://developer.android.com/guide/fragments/create
谁能告诉我该怎么做,或者谁能帮我把这个 activity 改成碎片。 我现在在编码方面的经验很少,所以我自己做不到。
public class SplashActivity extends AppCompatActivity {
FirebaseAuth auth;
FirebaseUser user;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash);
auth=FirebaseAuth.getInstance ();
user=auth.getCurrentUser ();
new Handler( ).postDelayed (new Runnable () {
@Override
public void run() {
if (user !=null)
{
startActivity ( new Intent( SplashActivity.this,HomeActivity.class ) );
}
else
{
startActivity ( new Intent ( SplashActivity.this,Login.class ) );
}
finish ();
}
},1500 );
}
}
我将从了解它们的生命周期(activity 和片段)开始。然后我们可以很好地了解将代码从 activity 中的 onCreate() 移动到 Fragment 中的 onViewCreated() 的位置。另请注意,activity 扩展了 AppCompatActivity,而 Fragment 扩展了 Fragment class。有了这两个观察结果,我们现在可以进行如下操作。请注意布局的重命名和 class 由于从 activity 更改为 class。
class SplashFragment extends Fragment {
private FirebaseAuth auth;
private FirebaseUser user;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
auth = FirebaseAuth.getInstance ();
user = auth.getCurrentUser ();
return inflater.inflate(R.layout.fragment_splash, container, false);
}
@Override
public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
new Handler().postDelayed (new Runnable () {
@Override
public void run() {
//Do your logic here.
}
}, 1500);
}
}
参考资料: 片段生命周期:https://developer.android.com/guide/fragments/lifecycle 片段实现:https://developer.android.com/guide/fragments/create