Chinaunix首页 | 论坛 | 博客
  • 博客访问: 6646404
  • 博文数量: 915
  • 博客积分: 17977
  • 博客等级: 上将
  • 技术积分: 8846
  • 用 户 组: 普通用户
  • 注册时间: 2005-08-26 09:59
个人简介

一个好老好老的老程序员了。

文章分类

全部博文(915)

文章存档

2022年(9)

2021年(13)

2020年(10)

2019年(40)

2018年(88)

2017年(130)

2015年(5)

2014年(12)

2013年(41)

2012年(36)

2011年(272)

2010年(1)

2009年(53)

2008年(65)

2007年(47)

2006年(81)

2005年(12)

发布时间:2018-08-23 21:35:20

特定于平台的位图如您所见,您可以通过Web或共享PCL项目加载位图。您还可以加载存储为各个平台项目中的资源的位图。这个工作的工具是Image?Source.FromFile静态方法和相应的FileImageSource类。您可能会将此工具主要用于与用户界面元素连接的位图。 MenuItem和ToolBarItem中的Icon属性的类型为FileImageSource。 Bu.........【阅读全文】

阅读(2529) | 评论(0) | 转发(0)

发布时间:2018-08-22 22:16:57

在运行时生成位图所有这三个平台都支持BMP文件格式,该格式可以追溯到Microsoft Windows的最开始。尽管它具有古老的传统,但BMP文件格式现在已经相当标准化,具有更多的扩展标题信息。虽然有一些BMP选项允许一些基本压缩,但大多数BMP文件都是未压缩的。这种缺乏压缩通常被视为BMP文件的缺点,但在某些情况下它根本不是缺.........【阅读全文】

阅读(2639) | 评论(0) | 转发(0)

发布时间:2018-08-20 21:11:53

流式位图如果ImageSource类没有FromUri或FromResource方法,您仍然可以通过Web访问位图或作为PCL中的资源存储。 您可以使用ImageSource.FromStream或StreamImageSource类执行这两个作业以及其他几个作业。ImageSource.FromStream方法比StreamImageSource更容易使用,但两者都有点奇怪。 ImageSource.FromStream的参.........【阅读全文】

阅读(5432) | 评论(0) | 转发(0)

发布时间:2018-08-17 22:41:19

浏览和等待ImageBrowser程序演示了Image的另一个功能,它允许您浏览本书中某些示例所使用的库存照片。 正如您在下面的XAML文件中看到的那样,Image元素与Label和两个Button视图共享屏幕。 请注意,在Image上设置了PropertyChanged处理程序。 您在第11章“可绑定基础结构”中了解到,PropertyChanged处理程序由BindableObje.........【阅读全文】

阅读(2844) | 评论(0) | 转发(0)

发布时间:2018-08-16 22:20:16

更多关于尺寸到目前为止,您已经看到了两种方法来调整Image元素的大小:如果Image元素没有受到任何限制,它将在保持bit?map的宽高比的同时填充其容器,或者如果将Aspect属性设置为Fill或AspectFill,则完全填充该区域。如果位图小于其容器的大小,并且通过将HorizontalOptions或VerticalOptions设置为Fill以外的其他内.........【阅读全文】

阅读(5478) | 评论(0) | 转发(0)

发布时间:2018-08-15 21:49:25

嵌入资源通过Internet访问位图很方便,但有时候并不是最佳选择。该过程需要互联网连接,确保位图未被移动,并有一段时间下载。为了快速且有保证地访问位图,它们可以直接绑定到应用程序中。如果需要访问非特定于平台的映像,则可以将位图作为嵌入资源包含在共享的可移植类库项目中,并使用ImageSource.From?Resource方法.........【阅读全文】

阅读(4949) | 评论(0) | 转发(0)

发布时间:2018-08-14 21:51:07

适合和填充如果在任何先前的代码和XAML示例上设置Image的BackgroundColor属性,您将看到Image实际占据页面的整个矩形区域。 Image定义了一个Aspect属性,用于控制位图在此矩形内的呈现方式。 您将此属性设置为Aspect枚举的成员:AspectFit - 默认值Fill - 拉伸而不保留纵横比AspectFill - 保留纵横.........【阅读全文】

阅读(3051) | 评论(0) | 转发(0)

发布时间:2018-08-13 21:56:26

图形用户界面的可视元素可以粗略地分为用于呈现的元素(例如文本)和能够与用户交互的元素,例如按钮,滑块和列表框。文本对于呈现至关重要,但图片通常与补充文本和传达重要信息的方式同样重要。例如,没有图片,网络是不可想象的。这些图像通常是称为位图的图像元素(或像素)的矩形阵列的形式。就像名为Label的视图.........【阅读全文】

阅读(5304) | 评论(0) | 转发(0)

发布时间:2018-08-13 21:52:34

设备样式Xamarin.Forms包含六种内置动态样式。 这些被称为设备样式,它们是名为Styles的嵌套类的成员。 这个Styles类定义了12个静态和只读字段,有助于在代码中引用这六个样式:Style样式的BodyStyle。类型为String的BodyStyleKey,等于“BodyStyle”。Ttyle类型的TitleStyle。Tord类型.........【阅读全文】

阅读(2814) | 评论(0) | 转发(0)

发布时间:2018-08-11 22:00:46

动态样式Style通常是一个静态对象,它在XAML或代码中创建和初始化,然后在应用程序的持续时间内保持不变。 Style类不是从BindableOb?ject派生的,也不在内部响应其属性的变化。 例如,如果将Style对象分配给元素,然后通过为其设置新值来修改其中一个Setter对象,则新值将不会显示在元素中。 同样,如果添加Setter或.........【阅读全文】

阅读(5344) | 评论(0) | 转发(0)

发布时间:2018-08-10 21:40:19

隐含的样式ResourceDictionary中的每个条目都需要一个字典键。这是一个不争的事实。如果您尝试将null键传递给ResourceDictionary对象的Add方法,则会引发ArgumentNullException。但是,有一种特殊情况,程序员不需要提供此字典密钥。而是自动生成字典密钥。这种特殊情况适用于添加到ResourceDictionary而没有x:Key.........【阅读全文】

阅读(2531) | 评论(0) | 转发(0)

发布时间:2018-08-09 20:13:57

样式继承Style的TargetType提供两种不同的功能:下一节隐式样式中描述了其中一种功能。 另一个函数是为了XAML解析器的好处。 XAML解析器必须能够解析Setter对象中的属性名称,并且为此需要TargetType提供的类名。样式中的所有属性必须由Target?Type属性中指定的类定义或继承。 设置Style的可视元素的类型必须与Targ.........【阅读全文】

阅读(2298) | 评论(0) | 转发(0)

发布时间:2018-08-08 21:52:59

代码中的样式尽管样式大多是在XAML中定义和使用的,但您应该知道在代码中定义和使用它们时的样子。 这是仅代码的BasicStyleCode项目的页面类。 BasicStyleCodePage类的构造函数使用对象初始化语法来模拟定义Style对象并将其应用于三个按钮时的XAML语法:点击(此处)折叠或打开public c.........【阅读全文】

阅读(2024) | 评论(0) | 转发(0)

发布时间:2018-08-06 22:04:48

Xamarin.Forms应用程序通常包含具有相同属性设置的多个元素。例如,您可能有几个具有相同颜色,字体大小和布局选项的按钮。在代码中,您可以为循环中的多个按钮指定相同的属性,但在XAML中不能使用循环。如果您想避免大量重复标记,则需要另一种解决方案。解决方案是Style类,它是在一个conient对象中合并的属性设置的集.........【阅读全文】

阅读(2063) | 评论(0) | 转发(0)

发布时间:2018-08-05 14:46:51

只读可绑定属性假设您正在使用一个应用程序,在该应用程序中,可以方便地知道Label元素显示的文本中的单词数。 也许您希望将该工具直接构建到源自Label的类中。 我们称这个新类为CountedLabel。到目前为止,您首先想到的是定义一个名为WordCount?属性的BindableProperty对象和一个名为WordCount的相应CLR属性。但是等一.........【阅读全文】

阅读(1969) | 评论(0) | 转发(0)

发布时间:2018-08-03 22:26:02

定义可绑定属性假设您想要一个增强的Label类,它允许您以点为单位指定字体大小。 让我们将这个类AltLabel称为“替代标签”。它派生自Label并包含一个名为PointSize的新属性。PointSize应该由可绑定属性支持吗? 当然! (虽然这样做的真正好处直到下一章才会得到证明。)仅代码的AltLabel类包含在Xamarin.FormsBook.........【阅读全文】

阅读(2003) | 评论(0) | 转发(0)

发布时间:2018-08-01 22:23:24

查看BindableObject和BindableProperty名为BindableObject和BindableProperty的类的存在最初可能有点令人困惑。请记住,BindableObject与Object非常相似,因为它充当了Xamarin.Forms API的一大块基类,特别是Element和VisualElement。BindableObject为BindableProperty类型的对象提供支持。 BindableProperty对象扩.........【阅读全文】

阅读(2255) | 评论(0) | 转发(0)

发布时间:2018-07-31 22:17:02

C#最基本的语言结构之一是称为属性的类成员。 在我们第一次遇到C#的时候,我们所有人都学会了定义属性的一般例程。 该属性通常由私有字段支持,并包含引用pri?vate字段的set和get访问器,并使用新值执行某些操作:点击(此处)折叠或打开public class MyClass{&n.........【阅读全文】

阅读(2185) | 评论(0) | 转发(0)

发布时间:2018-07-30 21:30:59

较少使用的标记扩展三个标记扩展名的使用量与其他扩展名不同。 这些是:x:Nullx:Typex:Array您使用x:Null扩展名将属性设置为null。 语法如下所示:点击(此处)折叠或打开<SomeElement SomeProperty="{x:Null}" />这没有多大意义,除非SomeProperty.........【阅读全文】

阅读(2356) | 评论(0) | 转发(0)

发布时间:2018-07-28 14:05:44

用于特殊目的的动态资源用于引用Resources字典中的项的StaticResource的替代方法是DynamicResource,如果您在上面的示例中仅使用DynamicResource替换StaticResource,则程序似乎运行相同。但是,这两个标记扩展非常不同。在解析XAML并构建页面时,StaticResource仅访问字典中的项目一次。但DynamicResource维护字典键和该.........【阅读全文】

阅读(2731) | 评论(0) | 转发(0)

发布时间:2018-07-26 22:25:53

一本词典树ResourceDictionary类与其他字典施加相同的规则:字典中的所有项必须具有键,但不允许重复键。但是,因为VisualElement的每个实例都可能有自己的资源字典,所以您的页面可以包含多个字典,只要每个字典中的所有键都是唯一的,您就可以在不同的字典中使用相同的键。可以想象,可视化树中的每个可视元素都可以拥.........【阅读全文】

阅读(5870) | 评论(0) | 转发(0)

发布时间:2018-07-25 22:21:36

资源词典Xamarin.Forms还支持第二种共享对象和值的方法,虽然这种方法比x:静态标记扩展稍微有点开销,但它更通用 - 因为所有东西 - 共享对象和使用的可视元素 它们 - 可以用XAML表示。VisualElement定义了一个名为Resources的属性,它属于ResourceDictionary类型 - 一个带有字符串键和类型为object的值的字典。 可.........【阅读全文】

阅读(4183) | 评论(0) | 转发(0)

发布时间:2018-07-24 21:55:53

访问静态成员IMarkupExtension最简单和最有用的实现之一封装在StaticExtension类中。 这是原始XAML规范的一部分,因此它通常出现在带有x前缀的XAML中。 StaticExtension定义了一个名为Member of string的属性,您可以将其设置为公共常量,静态属性,静态字段或枚举成员的类和成员名称。让我们看看它是如何工作的。 .........【阅读全文】

阅读(6846) | 评论(0) | 转发(0)

发布时间:2018-07-18 15:02:55

在代码中,您可以从各种不同的来源以各种不同的方式设置属性:triangle.Angle1 = 45;triangle.Angle1 = 180 * radians / Math.PI;triangle.Angle1 = angles[i];triangle.Angle1 = animator.GetCurrentAngle();如果此Angle1属性为double,则所需的只是source为double或以其他方式提供可转换为double的数值。但是.........【阅读全文】

阅读(6475) | 评论(0) | 转发(0)

发布时间:2018-07-16 21:27:22

特定于平台的声音生成现在为了本章的真正目的:给MonkeyTap发声。所有三个平台都支持API,允许程序动态生成和播放音频波形。这是MonkeyTapWithSound程序采用的方法。商业音乐文件通常以诸如MP3之类的格式压缩。但是当一个程序算法算法生成波形时,未压缩的格式会更加方便。最基本的技术 - 所有三个平台都支持 - 称为.........【阅读全文】

阅读(20845) | 评论(0) | 转发(0)
给主人留下些什么吧!~~

tomcoding2018-07-26 14:59

技术大牛,向你学习,请访问我的博客,有更多高技术含量的源代码

回复  |  举报

renxiao20032018-07-06 16:00

CU博客的技术人员应该处理下了。编辑的时代代码显示是正常的。浏览的时候代码行之间跨度好大啊。

回复  |  举报

renxiao20032015-02-05 09:22

http://www.jb51.net/softjc/130417.html

回复  |  举报

renxiao20032013-04-23 14:31

http://www.cnblogs.com/yqhome/archive/2012/09/12/2681561.html

回复  |  举报

IMAX-9112012-01-16 10:58

看你头像是avast 嘿嘿  我也用那个

回复  |  举报
留言热议
请登录后留言。

登录 注册