首页 文章 精选 留言 我的

精选列表

搜索[图像感知],共10000篇文章
优秀的个人博客,低调大师

. | 融合细胞学图像与空间转录组学的细胞分割方法

空间转录组技术的快速发展,使研究人员能够在组织原位测量基因表达,并逐步达到亚细胞乃至单细胞分辨率。然而,要将分散在组织空间中的转录本准确归属于单个细胞,首先需要可靠识别每个细胞的边界。不同组织的细胞形态、染色方式、成像质量和转录本密度差异明显,使现有细胞分割算法在复杂组织、密集细胞区域以及跨平台应用中仍存在较大局限。

优秀的个人博客,低调大师

【iOS发展-28】制造业UITabBarController标记控制器、定制UITabBarItem文字图像6途径和More评论

一个、一个简单的制作过程(实际工程中不建议这样的方式,不要只展示所用原理的理解) 在AppDelegate.m在: - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { //创建一个到导航控制器 UIViewController *vc1=[[UIViewController alloc]init]; UINavigationController *nav1=[[UINavigationController alloc]initWithRootViewController:vc1]; nav1.title=@"首页"; //创建三个视图控制器 UIViewController *vc2=[[UIViewController alloc]init]; vc2.title=@"收藏"; UIViewController *vc3=[[UIViewController alloc]init]; vc3.title=@"搜索"; UIViewController *vc4=[[UIViewController alloc]init]; vc4.title=@"设置"; //创建一个数组把上面1个导航控制器和3个视图控制器的实例都装进去 NSArray *arr1=[[NSArray alloc]initWithObjects:nav1,vc2,vc3,vc4, nil]; //先实例化一个UITabBarController,然后把上面那个数组赋值给它的viewControllers属性 UITabBarController *tb1=[[UITabBarController alloc]init]; tb1.viewControllers=arr1; //最重要的是把上面实例化的标签控制器赋值给self.window的rootViewController,这样才干显示,和之前说的导航控制器显示是一样的 self.window.rootViewController=tb1; // Override point for customization after application launch. return YES; } 执行效果: 二、注意事项 (1)以上直接把数组赋值给标签控制器实例的viewControllers属性。而一般在做项目时不这样做,以上仅仅是演示整个原理实现的过程。 (2)UITabBarController有两个子视图,一个是UITabBar部分。它里面放得时UITabBarItem就是以下四个切换的标签那一块。还有一个是内容部分,就是几个视图。我们点击不同的标签,就会切换显示不同的视图。所以我们载入视图控制器的话,可能在针对视图那一块进行改动。而定制标签的话,是针对UITabBarItem进行改动。 (3)尺寸。UITabBarItem有图片icon也有文字,图片是50*50。详细的參数,点击这里。 三、UITabBarItem属性介绍及6种创建方式 我们创建了6个视图控制器,然后把它们的头文件导入进来。所以在AppDelegate.m文件里: - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { //第一种方式:通过导航控制器的tabBarItem来调用image属性 ViewController *vc0=[[ViewController alloc]init]; UINavigationController *nav0=[[UINavigationController alloc]initWithRootViewController:vc0]; //用nav0.tabBarItem.title=@"界面1";来赋值标题时用.title取值取不到。 //用下面方式赋值标题,能够用.tabBarItem.title取值,可是下面方式直接把navigationItem.title也一并赋值了 //优先使用下面的方法 nav0.title=@"界面1"; //赋值图片 nav0.tabBarItem.image=[UIImage imageNamed:@"Slice@1x.png"]; //另外一种方式:通过视图控制器的tabBarItem使用setFinishedSelectedImage方法。设置选中未选中图片状态 //只是这样的方法貌似不被推荐不能使用了,在iOS7中已被抛弃 //所以推荐使用initWithTitle:image:selectedImage:这个初始化方法 ViewController1 *vc1=[[ViewController1 alloc]init]; //vc1.title=@"界面2"; //[vc1.tabBarItem setFinishedSelectedImage:[UIImage imageNamed:@"1@1x.png"] withFinishedUnselectedImage:[UIImage imageNamed:@"1-selected@1x.png"]]; UITabBarItem *tb0=[[UITabBarItem alloc]initWithTitle:@"界面2" image:[UIImage imageNamed:@"Slice@1x.png"] selectedImage:[UIImage imageNamed:@"Slice-selected@1x.png"]]; vc1.tabBarItem=tb0; //第三种方式:通过视图控制器的tabBarItem来调用image属性 ViewController2 *vc2=[[ViewController2 alloc]init]; vc2.title=@"界面3"; vc2.tabBarItem.image=[UIImage imageNamed:@"Slice@1x.png"]; //第四种方式:设置徽标,badgeValue是tabBarItem的一个属性,值是字符串 ViewController3 *vc3=[[ViewController3 alloc]init]; vc3.title=@"界面4"; vc3.tabBarItem.image=[UIImage imageNamed:@"Slice@1x.png"]; vc3.tabBarItem.badgeValue=@"6"; //第五种方式:通过先设置一个系统自带的UITabBarItem,再把它赋值给视图控制器的tabBarItem //用这样的方式创建后。再设置.title或者.tabBarItem.Image就不起作用了 ViewController4 *vc4=[[ViewController4 alloc]init]; UITabBarItem *tb1=[[UITabBarItem alloc]initWithTabBarSystemItem:UITabBarSystemItemFavorites tag:0]; vc4.tabBarItem=tb1; //第六种方式:通过先初始化一个带有标题和图片的UITabBarItem,然后把它赋值给视图控制器的tabBarItem //相当于分别对.title和.tabBarItem.image进行设置,效果是相似的 //这样的方式不推荐使用 ViewController5 *vc5=[[ViewController5 alloc]init]; UITabBarItem *tb2=[[UITabBarItem alloc]initWithTitle:@"界面6" image:[UIImage imageNamed:@"Slice@1x.png"] tag:1]; vc5.tabBarItem=tb2; //下面是整一个数组装上面的那些个,然后初始化一个UITabBarController再把数组赋值给UITabBarController的viewControllers属性 //最后别忘了,把window的根视图控制器改动一下 NSArray *arr2=[[NSArray alloc]initWithObjects:nav0,vc4,vc1,vc3,vc2,vc5, nil]; UITabBarController *tbCon1=[[UITabBarController alloc]init]; tbCon1.viewControllers=arr2; self.window.rootViewController=tbCon1; // Override point for customization after application launch. return YES; } (1)tabbar的图标仅仅能显示5个。多于5个则统统归置到more里面,这个more事系统自带的图标。 (2)主要由两种方式:一种是直接在利用已有的导航控制器或者视图控制器的.title和.tabBarItem.image属性来设置文字和图片。另一种是先创建一个UITabBarItem(文字未选中图片选中图片等)然后把这个UITabBarItem赋值给导航控制器或者视图控制器的.tabBarItem属性。 (3)推荐使用另外一种方法,由于它在创建UITabBarItem时能够一次性的把文字、选中图片、未选中图片等不同状态都定义出来。 四、关于tabbar上得More (1)当标签多余5个时,标签控制器会自己主动创建一个moreNavigationController。即我们点击More。它是一个导航控制器。 (2)点击More之后我们能够点击编辑。然后通过拖动相应的图标来又一次排列它们的显示顺序。 五、关于英文和中文语言的问题 我们上面的More和Edit都是英文。怎样显示成中文呢?须要用到本地化。 该程序默认仅仅提供英文一种语言,所以无论用户手机设置成什么语言,仅仅要涉及到系统自带的文字都会是英文。我们须要给程序设置成两种语言(中文和英文)。这样程序会依据用户手机的语言设置显示对应的语言。 方法:在Info.plist中添加一个Localizations,并给这个Localizations添加一个选项是中文简体(默认仅仅有英文)。 如此。打完收工! (假设你的文字仍然是英文,那么点击CMD+SHIFT+H回主界面,然后Setting转到模拟器语言可以设置为简体中国) 版权声明:本文博客原创文章,博客,未经同意,不得转载。 本文转自mfrbuaa博客园博客,原文链接:http://www.cnblogs.com/mfrbuaa/p/4660647.html,如需转载请自行联系原作者

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

用户登录
用户注册