我在xamarin中有这个布局:
在左侧面板上是订单列表 每次单击某个项目时,它都应显示在右侧面板上 但是会发生什么,细节弹出:
这是详细信息的代码:
public class InProgressFragment : Fragment, SwipeRefreshLayout.IOnRefreshListener
{
RecyclerView mRecyclerView;
RecyclerView.LayoutManager mLayoutManager;
SwipeRefreshLayout mSwipeRefreshLayout;
InProgressAdapter mAdapter;
List<DTO.Order> mOrders;
void OnItemClick (object sender, int position)
{
var InProgressDetailsActivity = new Intent (Activity, typeof(InProgressDetailsActivity));
InProgressDetailsActivity.PutExtra ("TransactionID", mOrders [position].TransactionId);
InProgressDetailsActivity.PutExtra ("UpdatedBy", mOrders [position].UpdateBy);
InProgressDetailsActivity.PutExtra ("DatePaid", mOrders[position].DatePaid != null ?
mOrders [position].DatePaid.Value.ToString ("ddd, MMM d h:mm tt", CultureInfo.CreateSpecificCulture ("en-US")) : "n/a");
InProgressDetailsActivity.PutExtra ("Remarks", mOrders [position].UserRemarks);
InProgressDetailsActivity.PutExtra ("ShippingMethod", mOrders [position].ShippingMethod);
InProgressDetailsActivity.PutExtra ("CustomerName", mOrders [position].UserName);
InProgressDetailsActivity.PutExtra ("AddressPK", mOrders [position].AddressPartitionKey);
InProgressDetailsActivity.PutExtra ("AddressRK", mOrders [position].AddressRowKey);
InProgressDetailsActivity.PutExtra ("Paid", mOrders [position].Paid);
StartActivity (InProgressDetailsActivity);
}
.
.
.
这是layout-large
下的视图。详细信息视图只是一个模型:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<RelativeLayout
android:layout_weight="1"
android:layout_width="0px"
android:layout_height="match_parent"
android:background="#f2f2f2"
android:paddingRight="2dp"
android:id="@+id/relativeLayout1">
<LinearLayout xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:fitsSystemWindows="true">
<include
android:id="@+id/toolbar"
layout="@layout/GrabhutToolbar" />
<com.refractored.PagerSlidingTabStrip
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:pstsDividerWidth="0dp"
app:pstsDividerPadding="12dp"
app:pstsShouldExpand="true"
app:pstsIndicatorHeight="5dp"
app:pstsUnderlineColor="#000000"
app:pstsTabPaddingLeftRight="14dp"
app:pstsIndicatorColor="@android:color/holo_orange_light"
app:pstsDividerColor="#ffffff" />
<android.support.v4.view.ViewPager
android:id="@+id/pager"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
tools:context=".MainActivity" />
</LinearLayout>
</RelativeLayout>
<!--' DETAILVIEW '-->
<RelativeLayout
android:layout_weight="2"
android:layout_width="0px"
android:layout_height="match_parent"
android:id="@+id/relativeLayout2"
android:minWidth="25px"
android:minHeight="25px"
android:background="#ffffffff"
android:padding="16dp">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/details">
<include
android:id="@+id/toolbar"
layout="@layout/GrabhutToolbar" />
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:minWidth="25px"
android:minHeight="25px"
android:padding="16dp">
<LinearLayout
android:orientation="vertical"
android:minWidth="25px"
android:minHeight="25px"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="2dp"
android:paddingBottom="16dp">
<TextView
android:textAppearance="?android:attr/textAppearanceLarge"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/TransactionID"
android:layout_marginBottom="16dp"
android:textColor="#ffec6206"
android:textStyle="bold"
android:text="TRANSACTION ID" />
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="4dp">
<TextView
android:text="Processed By : "
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textColor="#ff505050" />
<TextView
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:id="@+id/ProcessedBy"
android:textColor="#ff797979" />
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="4dp">
<TextView
android:text="Paid On : "
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textColor="#ff505050" />
<TextView
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:id="@+id/DatePaid"
android:textColor="#ff797979" />
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:text="Remarks : "
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:textColor="#ff505050" />
<TextView
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/Remarks"
android:textColor="#ff797979" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="16dp"
android:paddingBottom="20dp"
android:layout_marginBottom="2dp">
<TextView
android:text="Shipping Details"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#ff505050"
android:textStyle="bold"
android:layout_marginBottom="16dp" />
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="4dp">
<ImageView
android:src="@drawable/ic_local_shipping_grey600_48dp"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_gravity="center_vertical" />
<TextView
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:id="@+id/ShippingMethod"
android:textColor="#ff797979"
android:layout_marginLeft="8dp" />
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="4dp">
<ImageView
android:src="@drawable/ic_room_grey600_48dp"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_gravity="center_vertical" />
<TextView
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:id="@+id/Address"
android:textColor="#ff797979"
android:layout_marginLeft="8dp" />
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="4dp">
<ImageView
android:src="@drawable/user"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_gravity="center_vertical" />
<TextView
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:id="@+id/CustomerName"
android:textColor="#ff797979"
android:layout_marginLeft="8dp" />
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="4dp"
android:minWidth="25px"
android:minHeight="25px"
android:gravity="right">
<Button
android:text="SCHEDULE"
android:textColor="#ffffffff"
android:textStyle="bold"
android:background="@color/orange"
android:id="@+id/Schedule"
android:layout_width="wrap_content"
android:layout_height="match_parent" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/orderitems" />
</LinearLayout>
</RelativeLayout>
</LinearLayout>
答案 0 :(得分:0)
为什么你不使用碎片?这对你的案例来说是最好的,check here about fragments and dual panel
另外,我没有看到有意这么多数据的原因,您可以使用Application类以这种方式存储整个对象:
namespace myApplication
{
[Application]
public class myApplication : Application
{
public bool enabled; {get; set;}
public override void OnCreate()
{
base.OnCreate();
enabled = false;
}
}
并以这种方式使用此对象:
App _app = (App)Application.Context;
_app.enabled = true;