Ich habe ein Xamarin-Projekt gestylt mit MvvmCross. Es gibt Teilprojekte:Xamarin: Wie man Bild von iOS-Bibliotheksprojekt lädt
- Core (PCL)
- Ansichtsmodell (PCL)
- iOS (Executable)
Wenn ich hinzufügen, um ein Bild zu meinem iOS-Projekt (Resoureces/Bilder/test_image. png), dann kann ich es mit diesem Code laden:
UIImage image = UIImage.FromBundle("Images/test_icon.png");
Nun, ich möchte ein neues Teilprojekt verwenden
- Controls (iOS-Bibliothek)
Diese Bibliothek sollte ein Bild laden. Ich habe ein Bild zu Controls hinzugefügt (Resources/Images/test_image.png)
Aber ich kann dieses Bild nicht in Controls proj laden.
Meine Frage: Wie Bilder aus iOS-Bibliotheken geladen werden?
public class MyButton : UIButton
{
public MyButton() : base()
{
Initialize();
}
void Initialize()
{
// load image from bundle
UIImage image = UIImage.FromBundle("Images/test_icon.png");
// image is null
this.SetImage (image, UIControlState.Normal);
}
}
und die Viewcontroller Klasse:
public partial class FirstView : MvxViewController
{
public FirstView() : base ("FirstView", null)
{
}
public override void ViewDidLoad()
{
base.ViewDidLoad();
// load image from bundle
// UIImage image = UIImage.FromBundle("Images/test_icon.png");
// image is not null if added in iOS Proj
// this.imageView.Image = image;
MyButton button = new MyButton();
View.Add (button);
View.AddConstraint (NSLayoutConstraint.Create (button, NSLayoutAttribute.Right, NSLayoutRelation.Equal, View, NSLayoutAttribute.Right, 1, 10));
View.AddConstraint (NSLayoutConstraint.Create (button, NSLayoutAttribute.Top, NSLayoutRelation.Equal, View, NSLayoutAttribute.Top, 1, 74));
View.AddConstraint (NSLayoutConstraint.Create (button, NSLayoutAttribute.Width, NSLayoutRelation.Equal, null, NSLayoutAttribute.NoAttribute, 0, 64));
View.AddConstraint (NSLayoutConstraint.Create (button, NSLayoutAttribute.Height, NSLayoutRelation.Equal, null, NSLayoutAttribute.NoAttribute, 0, 64));
}
}
ist hier voll proj: https://bitbucket.org/ww_wschaefer/xamarin-first-crossover-app/overview
Sie aus Bundle, wenn sein als gebündelte Ressource verwenden kann nicht, ich glaube, Sie verwenden 'UIImage.FromFile („Images/test_icon.png“besser wäre,) '. Sie sollten sich auch diese [Frage] (http://stackoverflow.com/q/18130779/1155650) ansehen. –
kann ich nicht glauben, die Lösung ist so einfach, danke Rohit. – iOSfleer
froh, dass dein Problem gelöst wurde. Ich habe die Erklärung hinzugefügt, wenn Sie interessiert sind. –