public NPCParcelable GetNPC(string name, string campaign) { List <string> results = new List <string>(); var query = from npc in conn.Table <NPC>() where npc.Campaign.Equals(campaign) && npc.Name.Equals(name) select npc; NPCParcelable parcelable = new NPCParcelable(); try { parcelable.NPC = query.SingleOrDefault(); return(parcelable); } catch { parcelable.NPC = query.FirstOrDefault(); return(parcelable); } }
public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // Use this to return your custom view for this Fragment // return inflater.Inflate(Resource.Layout.YourFragment, container, false); if (container == null) { return(null); } NPCController nc = new NPCController(); NPCParcelable parcelable = nc.GetNPC(NPCName, CampaignName); var scroller = new ScrollView(Activity); var linearlayout = new LinearLayout(Activity); linearlayout.Orientation = Orientation.Vertical; var nameView = new TextView(Activity); var padding = Convert.ToInt32(TypedValue.ApplyDimension(ComplexUnitType.Dip, 10, Activity.Resources.DisplayMetrics)); nameView.SetPadding(padding, padding, padding, padding); nameView.TextSize = 30; nameView.Text = parcelable.NPC.Name; nameView.TextAlignment = TextAlignment.Center; linearlayout.AddView(nameView); if (parcelable.NPC.Appearance != "") { var appearenceView = new TextView(Activity); appearenceView.SetPadding(padding, padding, padding, padding); appearenceView.TextSize = 20; appearenceView.Text = "Appearence"; appearenceView.TextAlignment = TextAlignment.Center; linearlayout.AddView(appearenceView); var appearenceText = new TextView(Activity); appearenceText.SetPadding(padding, padding, padding, padding); appearenceText.TextSize = 15; appearenceText.Text = parcelable.NPC.Appearance; linearlayout.AddView(appearenceText); } if (parcelable.NPC.Quote != "") { var quoteView = new TextView(Activity); quoteView.SetPadding(padding, padding, padding, padding); quoteView.TextSize = 20; quoteView.Text = "Quote"; quoteView.TextAlignment = TextAlignment.Center; linearlayout.AddView(quoteView); var quoteText = new TextView(Activity); quoteText.SetPadding(padding, padding, padding, padding); quoteText.TextSize = 15; quoteText.Text = parcelable.NPC.Quote; linearlayout.AddView(quoteText); } if (parcelable.NPC.Roleplaying != "") { var rolePlayingView = new TextView(Activity); rolePlayingView.SetPadding(padding, padding, padding, padding); rolePlayingView.TextSize = 20; rolePlayingView.Text = "Roleplay"; rolePlayingView.TextAlignment = TextAlignment.Center; linearlayout.AddView(rolePlayingView); var rolePlayingText = new TextView(Activity); rolePlayingText.SetPadding(padding, padding, padding, padding); rolePlayingText.TextSize = 15; rolePlayingText.Text = parcelable.NPC.Roleplaying; linearlayout.AddView(rolePlayingText); } if (parcelable.NPC.Background != "") { var backgroundView = new TextView(Activity); backgroundView.SetPadding(padding, padding, padding, padding); backgroundView.TextSize = 20; backgroundView.Text = "Background"; backgroundView.TextAlignment = TextAlignment.Center; linearlayout.AddView(backgroundView); var backgroundText = new TextView(Activity); backgroundText.SetPadding(padding, padding, padding, padding); backgroundText.TextSize = 15; backgroundText.Text = parcelable.NPC.Background; linearlayout.AddView(backgroundText); } if (parcelable.NPC.KeyInfo != "") { var keyInfoView = new TextView(Activity); keyInfoView.SetPadding(padding, padding, padding, padding); keyInfoView.TextSize = 20; keyInfoView.Text = "Key Info"; keyInfoView.TextAlignment = TextAlignment.Center; linearlayout.AddView(keyInfoView); var keyInfoText = new TextView(Activity); keyInfoText.SetPadding(padding, padding, padding, padding); keyInfoText.TextSize = 15; keyInfoText.Text = parcelable.NPC.KeyInfo; linearlayout.AddView(keyInfoText); } if (parcelable.NPC.StatBlock != "") { var statBlockView = new TextView(Activity); statBlockView.SetPadding(padding, padding, padding, padding); statBlockView.TextSize = 20; statBlockView.Text = "Stats"; statBlockView.TextAlignment = TextAlignment.Center; linearlayout.AddView(statBlockView); var statBlockText = new TextView(Activity); statBlockText.SetPadding(padding, padding, padding, padding); statBlockText.TextSize = 15; statBlockText.Text = parcelable.NPC.StatBlock; linearlayout.AddView(statBlockText); } scroller.AddView(linearlayout); return(scroller); }