首页 > 解决方案 > Android - 从另一个片段启动片段

问题描述

我在这个问题上被困了将近 10 天,我在互联网上搜索了一个解决方案,我已经尝试了所有方法,但没有人与我合作。 片段1.cs

public override View OnCreateView(LayoutInflater inflater, ViewGroup 
 container, Bundle savedInstanceState)
  {
base.OnCreate(savedInstanceState);
View view = inflater.Inflate(Resource.Layout.my_layout, container, false);
add.Click += delegate
    {
        Fragment2 fragment2 = new Fragment2();
        FragmentTransaction ft = FragmentManager.BeginTransaction();
        ft.Replace(Resource.Id.content_frame, fragment2);
        ft.Commit();
     };
return view;
}

片段2.cs

public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
    base.OnCreate(savedInstanceState);
    View view = inflater.Inflate(Resource.Layout.fragment_lay, container, false);

    TextView txt = view.FindViewById<TextView>(Resource.Id.textView1);
    Button btn = view.FindViewById<Button>(Resource.Id.button1);
    listView = view.FindViewById<ListView>(Resource.Id.listView1);
    Toast.MakeText(Activity, "Fragment2 started", ToastLength.Short).Show();
    return view;
   }

我的布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/content_frame">
<TextView
    android:text="Text"
    android:layout_width="match_parent"
    android:layout_height="70dp"
    android:id="@+id/total"
    android:textAlignment="center"
    android:textSize="30dp" />
<TextView
    android:text="Text"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/textchangevalue"
    android:textSize="33dip"
    android:textStyle="bold" />
<Button
    android:text="UPDATE"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/updatebtn" />
<Button
    android:text="ADD"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/addbtn" />
<ListView
    android:minWidth="25px"
    android:minHeight="25px"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/portfoliolist"
    android:clickable="true" />

我试图Fragment1通过 put 而不是<LinearLayout>a来改变布局,<FrameLayout>但也didn't有效。我在 中放置了一条toast消息,Fragment2当我单击 中的add按钮时Fragment1toast消息(位于 中fragment2)正在显示,这意味着fragment2开始正常,但其布局未显示在屏幕上。请帮我找到解决方案。

标签: c#androidvisual-studioandroid-layoutandroid-fragments

解决方案


推荐阅读