2016-10-13 15 views
6

Tôi đang tạo một ứng dụng Hybrid trong C#/Xamarin, và tôi muốn tạo một menu tùy chỉnh cho tất cả các ứng dụng (iOS, Android, Windows Phone).Làm thế nào để thay đổi Font/Màu/Kích cỡ trong Xamarin C#

Vì vậy, tôi tạo một MasterPage làm Menu của tôi.

public MasterPage() 
{ 
    InitializeComponent(); 
    var masterPageItems = new List<MenuItem>(); 

     masterPageItems.Add(new MenuItem 
      { 
       Title = "Administração", 
      }); 
      masterPageItems.Add(new MenuItem 
      { 
       Title = "Meus Dados", 
       IconSource = "contacts.png", 
       TargetType = typeof(MeusDados), 
      }); 
      masterPageItems.Add(new MenuItem 
      { 
       Title = "Dados Cadastrais", 
       IconSource = "contacts.png", 
       TargetType = typeof(MeusNegocios), 
      }); 

    var listView = new ListView 
    { 
     ItemsSource = masterPageItems, 
     ItemTemplate = new DataTemplate(() => 
     { 
      var imageCell = new ImageCell(); 
      imageCell.SetBinding(TextCell.TextProperty, "Title"); 
      imageCell.SetBinding(ImageCell.ImageSourceProperty, "IconSource"); 
      return imageCell; 
     }), 
     VerticalOptions = LayoutOptions.FillAndExpand, 
     SeparatorVisibility = SeparatorVisibility.None 
    }; 

    Padding = new Thickness(0, 20, 0, 0); 
    Content = new StackLayout 
    { 
      VerticalOptions = LayoutOptions.Fill, 
      Children = { 
      listView 
      } 
    }; 
} 

Đây là MenuItem:

public class MenuItem 
{ 
    public string Title { get; set; } 

    public string IconSource { get; set; } 

    public Type TargetType { get; set; } 
    public string Parameter { get; set; } 
} 

Vì vậy, bây giờ tôi muốn thay đổi kích thước của trang nội dung, font chữ, màu chữ, cỡ chữ trong C#. Tôi nên làm như thế nào?

Trả lời

1

Xamarin Forms doc trên Fonts: Fonts: https://developer.xamarin.com/guides/xamarin-forms/user-interface/text/fonts/

Ví dụ:

var about = new Label { 
    FontSize = Device.GetNamedSize (NamedSize.Medium, typeof(Label)), 
    FontAttributes = FontAttributes.Bold, 
    Text = "Medium Bold Font" 
}; 

tôi lưu ý rằng bạn đang sử dụng một ImageCell, mà không có các thuộc tính Font nhưng chỉ có một Format và DetailColor bất động sản. Ngoài ra không có thuộc tính nào để lấy các Nhãn cơ bản trong ImageCell, do đó, tốt nhất bạn nên đặt cược nếu bạn muốn tùy chỉnh đầy đủ là tạo ViewCell của riêng bạn và thêm Hình ảnh và Nhãn vào ViewCell. Sau đó, bạn có thể tạo kiểu cho các Nhãn của mình bằng các thuộc tính Phông chữ.

Cách khác, bạn có thể sử dụng Chủ đề, mà là ở Preview: https://developer.xamarin.com/guides/xamarin-forms/themes/

styleClass Thuộc tính styleClass cho phép một cái nhìn bề ngoài phải được thay đổi theo một định nghĩa được cung cấp bởi một chủ đề.

Các vấn đề liên quan