XAMLKit is an in-progress implementation of Microsoft's eXtensible Application Markup Language goodness for iOS and objective-c.
Eventually this library will be packaged into cocoapods, for now include the source under lib/XAMLKit
.
Area | Purpose |
---|---|
Core | Everything for creating objects from XAML files |
Databinding | Supporting the {Binding ...} syntax etc. |
Flexbox | For flexbox inspired layout in UIKit |
Resources | Enabling the {StaticResource ...} syntax etc. |
UIKit | Special UIKit extensions for working with XAML declared user interfaces |
Add a build rule for all files matching *.xaml. Add the following script
$PROJECT_DIR/lib/XAMLKit/headerForXAMLFile.sh $INPUT_FILE_BASE > $DERIVED_FILE_DIR/$INPUT_FILE_NAME.h
$PROJECT_DIR/lib/XAMLKit/implementationForXAMLFile.sh $INPUT_FILE_BASE $INPUT_FILE_NAME $INPUT_FILE_PATH > $DERIVED_FILE_DIR/$INPUT_FILE_NAME.m
Then add the following output files
$(DERIVED_FILE_DIR)/$(INPUT_FILE_NAME).h
$(DERIVED_FILE_DIR)/$(INPUT_FILE_NAME).m
NOTE: Ensure that XAML files are added to Compile Source build phase
- XAML Deserialization
- Hot reloading
- Databinding
- Resources
- Flexbox Layout
- Todos sample
- Styles
- Triggers and Storyboards
- Cocoapods packaging
Cells are all currently of the default height no matter what the context. Consider adding configuration which maps view model Class to cell template. Consider adding slide-in buttons for cells declaritively.
Further investigation required
There are odd dependencies between the pods here and there, needs cleaning up.
Consider adding an idiom filter to styles to control iPad layout