Metro Style App开发快速入门 之资源操作

简介:

Metro Style App 之资源操作

运行环境请参考:Metro Style App之文件访问操作示例,下面介绍的是资源操作的一些体会。

对资源的操作方式主要有以下几种:

1、在Resources.resw文件中定义,然后通过x:Uid获取

使用方式是在x:Uid与之对应,如

<TextBlock x:Uid= "WelcomeWorld"  HorizontalAlignment= "Left"  Height= "41"  Margin= "66,50,0,0"  TextWrapping= "Wrap"  Text= "TextBlock"  VerticalAlignment= "Top"  Width= "137" />

 这样TextBlock显示的文本就是hello world!, TextBlock的宽度是100,当然可以自己调整.

2、在文件中访问。如访问图片

<Image  Source= "Images/sample.png"   HorizontalAlignment= "Left"  Height= "200"  Width= "200"   Stretch= "UniformToFill"  />

3、使用ResourceLoader.GetString方法获得Resources.resw定义的资源。本例中resourceLoadBtn显示内容为Hello sting1.

var  resourceLoad = new  ResourceLoader();
resourceLoadBtn.Content = resourceLoad.GetString( "string1" );

 注意:此时string1默认保存在Resources.resw文件中,如果resw的文件名不是Resources.resw,则要进行如下操作,如:

void  anotherResourceBtn_Click( object  sender, RoutedEventArgs e)
{
     var  resouceLoad = new  ResourceLoader( "AnotherResources" );
     anotherResourceBtn.Content = resouceLoad.GetString( "anotherString" );
}

 AnotherResources为AnotherResources.resw文件.

4、在其它项目中获得所需的资源。新建一个AppResourcesLibrary类库,然后建一个Resources.resw文件。

在Resources.resw文件中的定义如下:

下面是调用的方法

void  AppResourceLibraryBtn_Click( object  sender, RoutedEventArgs e)
{
     var  resourceloader = new  ResourceLoader( "AppResourcesLibrary/Resources" );
     AppResourceLibraryBtn.Content = resourceloader.GetString( "string1" ) + " from "  + AppResourcesLibrary.LocalizedNamesLibrary.Libraryname;
}

 

AppResourcesLibrary.LocalizedNamesLibrary.Libraryname这个属性定义在 AppResourcesLibrary类库中的LocalizedNamesLibrary类,

该类的定义如下:

public  static  class  LocalizedNamesLibrary
{
     static  ResourceLoader  resourceLoader = null ;
 
     public  static  string  LibraryName {
         get
         {
             String name;
             GetLibraryName( "libraryname" , out  name);
             return  name;
         }
     }
 
     private  static  void  GetLibraryName( string  resourceName, out  string  resourceValue)
     {
         if  (resourceLoader == null )
         {
             resourceLoader = new  ResourceLoader( "AppResourceClassLibrary/Resources" );
         }
         resourceValue = resourceLoader.GetString(resourceName);
     }
 
}

 该类的定义跟在同一个项目中资源的获取定义一样,此处不在介绍。

总结:以上只是一些资源操作的基础知识,更详细的资料请参考Metro style app的sample。里面还有资源的管理等。

以上只是自己的一点学习心得,如果有什么意见和建议,欢迎大家提出!当然自己还在学习研究中共同学习,一起进步!下一篇将介绍一些Metro app style的动画操作。

 

 

 本文转自Work Hard Work Smart博客园博客,原文链接:http://www.cnblogs.com/linlf03/archive/2012/03/14/2394357.html,如需转载请自行联系原作者

目录
相关文章
|
2月前
|
人工智能 文字识别 小程序
旅游社用什么工具收报名 + 资料?不开发 App 也能自动收集信息
本文探讨了旅游行业中报名信息收集的常见痛点及解决方案,重点介绍了二维码表单工具在提升信息收集效率、简化操作流程方面的优势。通过对比多种工具,分析其适用场景与实际应用逻辑,为一线旅游从业者提供高效、低成本的执行参考。
|
3月前
|
容器
HarmonyOS NEXT仓颉开发语言实战案例:外卖App
仓颉语言实战分享,教你如何用仓颉开发外卖App界面。内容包括页面布局、导航栏自定义、搜索框实现、列表模块构建等,附完整代码示例。轻松掌握Scroll、List等组件使用技巧,提升HarmonyOS应用开发能力。
|
3月前
|
IDE 开发工具 开发者
使用DevEcoStudio 开发、编译鸿蒙 NEXT_APP 以及使用中文插件
# 使用DevEcoStudio 开发、编译鸿蒙 NEXT_APP 以及使用中文插件 #鸿蒙开发工具 #DevEco Studio
290 1
|
3月前
|
人工智能 小程序 JavaScript
【一步步开发AI运动APP】十、微调优化内置运动分析器,灵活适配不同的应用场景
本文介绍了如何通过【一步步开发AI运动APP】系列博文,利用`ISportOptimizer`对内置运动分析器进行微调优化。相比小程序,APP框架(如uni-app)因技术差异,无法直接修改运动分析器参数,因此提供了统一的优化机制。开发者可通过`ISportOptimizer`获取和更新检测规则、动作样本等,灵活适应不同场景需求,如全民运动赛事的宽松模式或学生体测的严格模式。文中还提供了示例代码,展示如何对具体运动项目(如仰卧起坐)进行优化。需要注意的是,微调优化适用于标准动作的小范围调整,若动作变化过大(如花式跳绳),可期待后续自定义扩展功能。
|
3月前
|
容器
HarmonyOS NEXT仓颉开发语言实战案例:健身App
本期分享一个健身App首页的布局实现,顶部采用Stack容器实现重叠背景与偏移效果,列表部分使用List结合Scroll实现可滚动内容。代码结构清晰,适合学习HarmonyOS布局技巧。
|
3月前
|
容器
HarmonyOS NEXT仓颉开发语言实战案例:银行App
仓颉语言银行App项目分享,页面布局采用List容器,实现沉浸式体验与模块化设计。顶部资产模块结合Stack与Row布局,背景图与内容分离,代码清晰易懂;功能按钮部分通过负边距实现上移效果,圆角仅保留顶部;热门推荐使用header组件,结构更规范。整体代码风格与ArkTS相似,但细节更灵活,适合金融类应用开发。
|
4月前
|
存储 消息中间件 前端开发
PHP后端与uni-app前端协同的校园圈子系统:校园社交场景的跨端开发实践
校园圈子系统校园论坛小程序采用uni-app前端框架,支持多端运行,结合PHP后端(如ThinkPHP/Laravel),实现用户认证、社交关系管理、动态发布与实时聊天功能。前端通过组件化开发和uni.request与后端交互,后端提供RESTful API处理业务逻辑并存储数据于MySQL。同时引入Redis缓存热点数据,RabbitMQ处理异步任务,优化系统性能。核心功能包括JWT身份验证、好友系统、WebSocket实时聊天及活动管理,确保高效稳定的用户体验。
246 4
PHP后端与uni-app前端协同的校园圈子系统:校园社交场景的跨端开发实践
|
3月前
|
安全 新制造
不用开发APP,也能实现设备巡检自动提醒和记录归档
设备巡检新方案!告别纸质表格,用二维码轻松搞定自动提醒和记录归档。某工厂分享如何通过草料二维码实现一物一码、扫码填写巡检信息,自动生成数据归档,还能设置定期提醒,确保巡检任务按时完成。无需额外开发 App,低成本高效管理,为设备巡检提供简单又实用的解决方案。
|
4月前
|
人工智能 JavaScript 前端开发
借助 CodeBuddy,我轻松开发出三分钟读书 App
借助 CodeBuddy,我轻松开发出三分钟读书 App
103 6
|
4月前
|
人工智能 小程序 API
【一步步开发AI运动APP】九、自定义姿态动作识别检测——之关键点追踪
本文介绍了【一步步开发AI运动APP】系列中的关键点追踪技术。此前分享的系列博文助力开发者打造了多种AI健身场景的小程序,而新系列将聚焦性能更优的AI运动APP开发。文章重点讲解了“关键点位变化追踪”能力,适用于动态运动(如跳跃)分析,弥补了静态姿态检测的不足。通过`pose-calc`插件,开发者可设置关键点(如鼻子)、追踪方向(X或Y轴)及变化幅度。示例代码展示了如何在`uni-app`框架中使用`createPointTracker`实现关键点追踪,并结合人体识别结果完成动态分析。具体实现可参考文档与Demo示例。

热门文章

最新文章