2017-12-20 20 views
0

Android 및 iOS 프로젝트가 포함 된 휴대용 프로젝트 인 Visual Studio의 Xamarin을 사용하여 소셜 네트워킹 앱을 코딩하고 있습니다.코드를 통해 여러 라벨 추가

MainPage 클래스를 탐색하면 URL이 열리고 페이지가 읽히고 문자열로 저장됩니다. 모든 "
"에 나눠야합니다. 나는 for 루프를 사용해야한다고 생각하지만 다음에 무엇을해야할지 모른다. 각 덩어리가 자체 레이아웃 상자를 갖기를 바라고, 어떤 레이아웃을 사용해야하는지, 그리고 각각의 레이아웃이 가장 적합한 것을 아직 배웠습니다. 각 상자에는 라벨 (내용)과 이미지 (게시물에 URL이 있으면 URL을 열어 해당 이미지를 표시 할 수 있도록)가 표시됩니다.

기본적으로 원하는 각각에 대해 청크 문자열의

답변

1

구문 분석은 미도 ... 모든 스크롤 함께 그들은 그래서 이것은 또한 다음

for(string chunk : data.split("<br/">){ 
    <Layout?> 
    <label Text="*Content from the current chunk*"/> 
    if(*contains image*){ 
    <image>*Open url and display the image*</image> 
    } 
    </Layout?> 
} 

에게있는 ScrollView의 모든 내부를 편집 할 수 있습니다.

에서 MainPage.xaml :

<?xml version="1.0" encoding="utf-8" ?> 
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms" 
      xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" 
      xmlns:local="clr-namespace:StackOverflow1" 
      x:Class="StackOverflow1.MainPage" 
      Appearing="ContentPage_Appearing">  
    <ScrollView> 
     <StackLayout x:Name="mainStackLayout" /> 
    </ScrollView> 
</ContentPage> 

MainPage.xaml.cs를 :

// ... 
    public partial class MainPage : ContentPage 
    { 
     private List<Chunk> chunks = new List<Chunk>(); 

     // ... 

     private void ContentPage_Appearing(object sender, EventArgs e) 
     { 
      StackLayout childLayout; 

      foreach (Chunk chunk in chunks) 
      { 
       childLayout = new StackLayout(); 

       Image image = new Image() { Source = chunk.url, HorizontalOptions = LayoutOptions.Start }; 
       Label label = new Label() { Text = chunk.text, HorizontalOptions = LayoutOptions.Start }; 

       childLayout.Children.Add(image); 
       childLayout.Children.Add(label); 

       mainStackLayout.Children.Add(childLayout); 
      } 
     } 
    } 
    // ... 
+0

작품! 감사!! –