首页 文章 精选 留言 我的

精选列表

搜索[UI设计],共10000篇文章
优秀的个人博客,低调大师

Ant Design 5.19.1发布,企业级 UI 设计语言和 React 实现

An Design 5.19.1 现已发布,主要变化如下: Global: @ant-design/colors 使用预编译颜色预设来提升运行时性能。#49714 Global: 对于弹层类自动增长zIndex不再限制最大值,而是改成控制台警告。#49720 优化 Input.TextArea 清除图标的位置,与其他输入组件统一。#49718 修复 Input 组件filled变体下activeBorderColor不生效问题。#49699 TypeScript 修复 Cascader 组件multiple的类型问题。#49669 更新说明:https://github.com/ant-design/ant-design/releases/tag/5.19.1

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

【Android UI设计与开发】1.引导界面(一)ViewPager介绍和简单实现

1.ViewPager 实现效果图 2.ViewPager 实现功能 ViewPager类提供了多界面切换的新效果,新效果有如下特征: <1>当前显示一组界面中的其中一个界面; <2>当用户通过左右滑动界面时,当前的屏幕显示当前界面和下一个界面的一部分; <3>滑动结束后,界面自动跳转到当前选择的界面中。 3.ViewPager详细说明 android-support-v4.jar是谷歌官方给我们提供的一个兼容低版本安卓设备的软件包,里面包囊了只有在安卓3.0以上可以使用的api。而viewpager就是其中之一利用它,我们可以做很多事情,从最简单的导航,到页面菜单等等。那如何使用它呢,与ListView类似,我们也需要一个适配器,他就是PagerAdapter。 ViewPager对应官方文档地址为:http://developer.android.com/reference/android/support/v4/view/ViewPager.html 4、ViewPager的使用 分三个步骤来使用它: 1、在布局文件里加入该组件 <android.support.v4.view.ViewPager android:id="@+id/viewpager" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" > 注意:这个组件是用来显示左右滑动的界面的,如果不加载xml布局文件,他是不会显示内容的 2、加载要显示的页卡 LayoutInflater lf = getLayoutInflater().from(this); view1 = lf.inflate(R.layout.layout1, null); view2 = lf.inflate(R.layout.layout2, null); view3 = lf.inflate(R.layout.layout3, null); viewList = new ArrayList<View>();// 将要分页显示的View装入数组中 viewList.add(view1); viewList.add(view2); viewList.add(view3); 3、在Activity里实例化ViewPager组件,并设置它的Adapter(就是PagerAdapter,方法与ListView一样的),在这里一般需要重写PagerAdapter。 public class MyViewPagerAdapter extends PagerAdapter { private List<View> mListViews; public MyViewPagerAdapter(List<View> mListViews) { this.mListViews = mListViews;//构造方法,参数是我们的页卡,这样比较方便。 } @Override public void destroyItem(ViewGroup container, int position, Object object) { container.removeView(mListViews.get(position));//删除页卡 } @Override public Object instantiateItem(ViewGroup container, int position) {//这个方法用来实例化页卡 container.addView(mListViews.get(position), 0);//添加页卡 return mListViews.get(position); } @Override public int getCount() { return mListViews.size();//返回页卡的数量 } @Override public boolean isViewFromObject(View arg0, Object arg1) { return arg0==arg1; } } ViewPager的适配器是PagerAdapter,它是基类提供适配器来填充页面ViewPager内部,你很可能想要使用一个更具体的实现,如FragmentPagerAdapter或FragmentStatePagerAdapter。在这里需要说明一下,其实ViewPager应该和Fragment一起使用,至少谷歌官方是这么想的,但是在3.0之下,我们没有必要这么做。下面要注意,当你实现一个PagerAdapter,你必须至少覆盖以下方法: instantiateItem(ViewGroup, int) destroyItem(ViewGroup, int, Object) getCount() isViewFromObject(View, Object) PagerAdapter对应的官方文档地址为:http://developer.android.com/reference/android/support/v4/view/PagerAdapter.html 本文转自叶超Luka博客园博客,原文链接:http://www.cnblogs.com/yc-755909659/p/4282798.html,如需转载请自行联系原作者

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

Ant Design 4.17.0-alpha.6 发布,企业级 UI 设计语言和 React 实现

Ant Design 4.17.0-alpha.6现已发布,主要变化如下: 修复 InputNumber 操作杆箭头未居中对齐的问题。#32409 修复多次调用 Notification 时closeIcon配置会被覆盖的问题。#32359 修复 Button 有icon和href时的对齐问题。#32373 优化 Drawer 弹出动画。#32342 修复 Mentions 在 Form 下错误样式丢失的问题。#32385 TypeScript 修复 ConfigProvider 中getPopupContainer的参数类型。#32406 更新说明:https://github.com/ant-design/ant-design/releases/tag/4.17.0-alpha.

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

Ant Design 4.17.0-alpha.4 发布,企业级 UI 设计语言和 React 实现

Ant Design 4.17.0-alpha.4现已发布,主要变化如下: 修复英文国际化文案Ok为OK。#32259 修复antd.variable.less编译时会混入默认主题配置的问题。#32279 Button 修复 Buttonghost鼠标悬停样式。#32289 修复 Button 配置loading时,无法触发 Tooltip 的问题。#32158 Table 修复 Table 不支持ref的问题。#32136 Table 移除 IE11 下sticky的相关样式以解决布局问题。#32177 优化 Table 排序图标边距问题。#32172 修复 Switchloading按钮位置不正确的问题。#32216 修复 Grid Colflex在内容过长的时候缩放失效的问题。#32160 RTL 优化 Alert 关闭按钮在 RTL 模式下的显示。#32286 优化 Table 表头操作按钮在 RTL 模式下显示。#32283 优化 Collapse 按钮在 RTL 模式下位置显示。#32282 优化 Badge 数字在 RTL 模式下显示和动画。#32281 优化 InputNumber 操作栏 RTL 模式下边框样式。#32272 优化 Dropdown RTL 模式下 icon 显示。#32271 TypeScript 修复 Switchid属性定义。#32237 更新说明:https://github.com/ant-design/ant-design/releases/tag/4.17.0-alpha.4

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

【Android UI设计与开发】2.引导界面(二)使用ViewPager实现欢迎引导页面

1.实现的效果 2.编码前的准备工作 ViewPager是Android3.0之后提供的新特性,所以要想让你的应用向下兼容就必须要android-support-v4.jar这个包的支持,这是一个来自google提供的一个附加包。没有的百度下就有了。 3.具体的编码实现 (1)布局界面比较简单,加入ViewPager组件,以及底部的引导小点 activity_main.xml (2)其中小点的图片用一个selector来控制颜色 point.xml (3)重写ViewPager适配器 ViewPagerAdapter.class (4)编辑主程序入口类 MainActivity.class 本文转自叶超Luka博客园博客,原文链接:http://www.cnblogs.com/yc-755909659/p/4283294.html,如需转载请自行联系原作者

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

【Android UI设计与开发】10:滑动菜单栏(二)SlidingMenu 动画效果的实现

其实就是在显示菜单栏时,有个动画的效果。代码比较简单,下面进行说明。 1.效果图如下,手机上查看效果更佳 2.代码实现,这里只讲解动画效果的实现,具体代码可在源代码中查看 <1> 先定义一个CanvasTransformer接口对象,这个接口是在slidingmenu_library类库中封装好的 private CanvasTransformer mTransformer; <2> 然后再实例化此接口,重写接口中的方法,例如示例1中的方法: /** * transformCanvas(Canvas canvas, float percentOpen) * ① Canvas canvas:画布类; * ② float percentOpen:滑动菜单栏打开时的百分比值。 */ mTransformer = new CanvasTransformer() { @Override public void transformCanvas(Canvas canvas, float percentOpen) { float scale = (float) (percentOpen * 0.25 + 0.75); canvas.scale(scale, scale, canvas.getWidth() / 2, canvas.getHeight() / 2); } }; <3> 最后在把实例化的接口对象赋给SlidingMenu类中的setBehindCanvasTransformer()方法: getSlidingMenu().setBehindCanvasTransformer(mTransformer); <4>这样就完成了动画效果的实现,下面是示例1的主界面代码,其他的有兴趣的朋友可以查看源代码 package com.yanis.anima; import android.graphics.Canvas; import android.os.Bundle; import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu; import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu.CanvasTransformer; import com.jeremyfeinstein.slidingmenu.lib.app.SlidingFragmentActivity; /** * * @author Yanis * @Description 滑动时缩放的效果 */ public class FirstActivity extends SlidingFragmentActivity { private CanvasTransformer mTransformer; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); initAnimation(); initSlidingMenu(); getActionBar().setDisplayHomeAsUpEnabled(true); } /** * 初始化滑动菜单 */ private void initSlidingMenu() { // 设置主界面视图 setContentView(R.layout.layout_right); // 设置滑动菜单视图 setBehindContentView(R.layout.layout_left); // 设置滑动菜单的属性值 SlidingMenu sm = getSlidingMenu(); // 根据dimension资源文件的ID来设置下方视图的偏移量,此处是220dp sm.setBehindOffsetRes(R.dimen.slidingmenu_offset); sm.setFadeDegree(0.35f); sm.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN); sm.setBehindScrollScale(0.0f); sm.setBehindCanvasTransformer(mTransformer); setSlidingActionBarEnabled(true); } /** * 初始化动画效果 */ private void initAnimation() { /** * transformCanvas(Canvas canvas, float percentOpen) * ① Canvas canvas:画布类; * ② float percentOpen:滑动菜单栏打开时的百分比值。 */ mTransformer = new CanvasTransformer() { @Override public void transformCanvas(Canvas canvas, float percentOpen) { float scale = (float) (percentOpen * 0.25 + 0.75); canvas.scale(scale, scale, canvas.getWidth() / 2, canvas.getHeight() / 2); } }; } } 本文转自叶超Luka博客园博客,原文链接:http://www.cnblogs.com/yc-755909659/p/4311173.html,如需转载请自行联系原作者

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

【Android UI设计与开发】9:滑动菜单栏(一)开源项目SlidingMenu的使用和示例

一、SlidingMenu简介 相信大家对SlidingMenu都不陌生了,它是一种比较新的设置界面或配置界面的效果,在主界面左滑或者右滑出现设置界面效果,能方便的进行各种操作。很多优秀的应用都采用了这种界面方案,像facebook、人人网、everynote、Google+等等。如下图所示: 因为效果确实比较新颖,所以在很多的应用开发中去实现此效果,解决的办法也是不尽相同。诸多比较以后发 现,还是GitHub上的开源项目SlidingMenu提供了最佳的实现:定制灵活、各种阴影和渐变以及动画的滑动效果都很不错。不过这是一个开源库,而不是一个完整的项目,要把它作为libary引入到你自己的工程里,简单配置一下就可以实现SlidingMenu的效果。 二、SlidingMenu使用 slidingmenu_library下载地址:https://github.com/YeXiaoChao/slidingmenu_library 要想能够实现SlidingMenu的效果,首先必须要将它作为libary导入到你的工程 1、下载完毕之后,将此项目导入Eclipse开发环境中 2、导入项目之后,然后在新建一个Android项目,将slidingmenu_library导入新建的Android项目中,步骤如下: <1> 右键点击新建的Android项目,然后点击最下方的“Properties”选项; <2> 点击弹出对话框之后,在最左侧选择“Android”选项,然后再点击右下方的“Add”按钮; <3> 点击后弹出对话框,选中之前导入的slidingmenu_library项目 <4> 选中之后如图所示; <5> 这就说明了导入库已经成功了,导入成功之后会在Android的引用包中出现一个slidingmenu_library.jar包; 注意:这里有个地方需要大家特别注意一下,在新建完Android项目之后,较新的Eclipse版本都会在Android目录下生成一个libs的文件夹,里面会有一个android-support-v4.jar的jar包,这个jar一定要记得删掉,否则运行程序的时候会出现异常,提示是找不到类的异常。出现异常的原因是因为在导入slidingmenu_library类库的时候,这个类库里面本身就包含了android-support-v4.jar的jar包,所以运行的时候就会出现异常,系统不知道去调用哪个路径的下的包,所以程序崩溃,提示找不到类。 三、SlidingMenu示例 1.效果图片(GIF图片比较大,有3.6M) 2.代码讲解 1、项目结构图 2、content_frame.xml布局 <?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/menu_frame" android:layout_width="match_parent" android:layout_height="match_parent" /> <!-- 定义一个虚拟的视图,方便Fragment能够替换该视图,以达到Fragment的视图内容能够显示在屏幕上的效果。 --> 3、menu_frame.xml布局 <?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/menu_frame" android:layout_width="match_parent" android:layout_height="match_parent" /> <!-- 用来存放滑动菜单打开后的视图界面的。 --> 4、list.xml <?xml version="1.0" encoding="utf-8"?> <ListView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@android:id/list" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingLeft="@dimen/list_padding" android:paddingRight="@dimen/list_padding" /> <!-- 这个list布局文件会在ListFragment中用到。 --> 5、row.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="50dp" android:orientation="horizontal" > <ImageView android:id="@+id/row_icon" android:layout_width="50dp" android:layout_height="50dp" android:padding="10dp" android:src="@drawable/ic_launcher" /> <TextView android:id="@+id/row_title" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center_vertical" android:padding="10dp" android:text="Medium Text" android:textAppearance="@android:style/TextAppearance.Medium" /> </LinearLayout> <!-- 用于存放列表中的图片和文本。 --> 6、shadow.xml资源 <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" > <gradient android:centerColor="#11000000" android:endColor="#33000000" android:startColor="#00000000" /> </shape> <!-- 用来实现阴影效果的图形,使用了渐变的绘图效果。 --> 7、SampleListFragment类 package com.yanis.slidingmenu; import android.content.Context; import android.os.Bundle; import android.support.v4.app.ListFragment; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ArrayAdapter; import android.widget.ImageView; import android.widget.TextView; /** * 划出的菜单栏 - 用来显示界面中的列表的。 */ public class SampleListFragment extends ListFragment { public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { return inflater.inflate(R.layout.list, null); } public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); SampleAdapter adapter = new SampleAdapter(getActivity()); for (int i = 0; i < 20; i++) { adapter.add(new SampleItem("Sample List", android.R.drawable.ic_menu_search)); } setListAdapter(adapter); } public class SampleAdapter extends ArrayAdapter<SampleItem> { public SampleAdapter(Context context) { super(context, 0); } public View getView(int position, View convertView, ViewGroup parent) { if (convertView == null) { convertView = LayoutInflater.from(getContext()).inflate(R.layout.row, null); } ImageView icon = (ImageView) convertView.findViewById(R.id.row_icon); icon.setImageResource(getItem(position).iconRes); TextView title = (TextView) convertView.findViewById(R.id.row_title); title.setText(getItem(position).tag); return convertView; } } private class SampleItem { public String tag; public int iconRes; public SampleItem(String tag, int iconRes) { this.tag = tag; this.iconRes = iconRes; } } } 8、SlidingMenuActivity_1、SlidingMenuActivity_2等类 这些类是对SlidingMenu的属性进行设置,下面放个简单的,具体可以查看源代码。 package com.yanis.slidingmenu; import android.os.Bundle; import android.support.v4.app.FragmentActivity; import com.jeremyfeinstein.slidingmenu.lib.SlidingMenu; /** * * @author yechao * @说明 一个简单的放置在左边滑动菜单栏的效果 */ public class SlidingMenuActivity_2 extends FragmentActivity { private SlidingMenu menu; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // 设置标题 setTitle("Attach"); // 初始化滑动菜单 initSlidingMenu(); } /** * 初始化滑动菜单 */ private void initSlidingMenu() { // 设置主界面视图 setContentView(R.layout.content_frame); getSupportFragmentManager().beginTransaction() .replace(R.id.content_frame, new SampleListFragment()).commit(); // 设置滑动菜单的属性值 menu = new SlidingMenu(this); menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN); menu.setShadowWidthRes(R.dimen.shadow_width); menu.setShadowDrawable(R.drawable.shadow); menu.setBehindOffsetRes(R.dimen.slidingmenu_offset); menu.setFadeDegree(0.35f); menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT); // 设置滑动菜单的视图界面 menu.setMenu(R.layout.menu_frame); getSupportFragmentManager().beginTransaction() .replace(R.id.menu_frame, new SampleListFragment()).commit(); } @Override public void onBackPressed() { // 点击返回键关闭滑动菜单 if (menu.isMenuShowing()) { menu.showContent(); } else { super.onBackPressed(); } } } 本文转自叶超Luka博客园博客,原文链接:http://www.cnblogs.com/yc-755909659/p/4306938.html,如需转载请自行联系原作者

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

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文件系统,支持十年生命周期更新。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册