c# - 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
按钮时Fragment1
,toast
消息(位于 中fragment2
)正在显示,这意味着fragment2
开始正常,但其布局未显示在屏幕上。请帮我找到解决方案。
解决方案
推荐阅读
- python - 具有对象数据类型的数据框列无法转换为整数
- momentjs - 在 moment.js 中为时间戳添加小时数
- r - R Shiny 复选框不会绘制多个变量
- three.js - 在某些屏幕分辨率下,三个.js 场景中的图像模糊
- c# - 如何让 Newtonsoft 将 bool 序列化为 false,而不是 False 或“false”
- r - 如何过滤国家/美国/us-all-all 以仅显示 ca 和 nv?
- sse - 将字节相乘以产生 16 位,无需移位
- bash - 使用 sed 替换整行
- arrays - 如何在python 3中随机生成之前未观察到的列表序列
- colors - colorama/termcolor 不返回彩色线条