• 大小: 23.6MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-07-03
  • 语言: 其他
  • 标签:

资源简介

类似于网络游戏的商品切换滚动条,皮肤切换滚动条,自动居中离中心最近的Item,居中Item进行缩放,明暗变化。

资源截图

代码片段和文件信息

/******************************************************
* 滚动条扩展脚本 
* Author: liaoweiyu
* function:自动居中最靠近中心的Item
           支持居中Item缩放
           支持非居中Item变暗
           支持点击Item居中
           带有居中Item改变时回调委托:_centerChanged
******************************************************/


using UnityEngine;
using UnityEngine.UI;
using UnityEngine.EventSystems;
using System.Collections;
using System.Collections.Generic;
using System;
#if UNITY_EDITOR
using UnityEditor;
using UnityEditorInternal;
#endif
public enum ScrollDir_UGUI
{
    Horizontal
    Vertical
}
public enum ImageType_UGUI
{
    Image
}
/// 
/// 用于显示在Inspector的类
/// 

[Serializable]
public class ScrollViewImage
{
    public ImageType_UGUI type;
    public Image image;
}
#if UNITY_EDITOR
/// 
/// 重绘Inspector类
/// 

[CustomEditor(typeof(CenterOnChild_UGUI))]
public class OverDrawInspector : Editor
{
    private Serializedobject serial;//序列化
    private ReorderableList list;//数组

    private SerializedProperty TransformSpeed ScaleSpeed OpacitySpeed CenterChildScale AddMask MaskOpacity;
    /// 
    /// 初始化
    /// 

    void OnEnable()
    {
        serial = new Serializedobject(target);
        list = new ReorderableList(serial serial.FindProperty(“ChildMasks“) true true true true);
        TransformSpeed = serial.FindProperty(“TransformSpeed“);
        ScaleSpeed = serial.FindProperty(“ScaleSpeed“);
        OpacitySpeed = serial.FindProperty(“OpacitySpeed“);
        CenterChildScale = serial.FindProperty(“CenterChildScale“);
        AddMask = serial.FindProperty(“AddMask“);
        MaskOpacity = serial.FindProperty(“MaskOpacity“);

        //绘制List标题
        list.drawHeaderCallback = (Rect rect) =>
        {
            EditorGUI.LabelField(rect “MaskList“);
        };
        //绘制List
        list.drawElementCallback =
        (Rect rect int index bool isActive bool isFocused) =>
        {       
            var element = list.serializedProperty.GetArrayElementAtIndex(index);
            rect.y += 2;
            //绘制一个单元
            EditorGUI.PropertyField(new Rect(rect.x rect.y 60 EditorGUIUtility.singleLineHeight)
            element.FindPropertyRelative(“type“) GUIContent.none);
            EditorGUI.PropertyField(new Rect(rect.x + 60 rect.y rect.width - 60 - 30 EditorGUIUtility.singleLineHeight)
            element.FindPropertyRelative(“image“) GUIContent.none);
        };
    }
    /// 
    /// 重绘
    /// 

    public override void OnInspectorGUI()
    {
        serial.Update();
        EditorGUILayout.PropertyField(TransformSpeed);
        EditorGUILayout.PropertyField(ScaleSpeed);
        EditorGUILayout.PropertyField(CenterChildScale);
        EditorGUILayout.PropertyField(AddMask);
        if (AddMask.boolValue == true)
        {
            EditorGUILayout.PropertyField(OpacitySpeed);
          

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件       19649  2018-02-11 17:17  CenterOnChild_UGUI.cs
     文件      268285  2018-02-11 17:27  动态滚动条使用说明.docx
     目录           0  2018-02-11 17:34  工程文件\
     目录           0  2018-02-11 17:34  工程文件\SrollViewUGUI\
     目录           0  2018-02-11 17:34  工程文件\SrollViewUGUI\Assets\
     目录           0  2018-02-11 17:34  工程文件\SrollViewUGUI\Assets\Prefab\
     文件       81702  2018-02-11 17:18  工程文件\SrollViewUGUI\Assets\Prefab\UGUI_Store.prefab
     文件         209  2018-02-11 17:18  工程文件\SrollViewUGUI\Assets\Prefab\UGUI_Store.prefab.meta
     文件         191  2018-02-11 17:18  工程文件\SrollViewUGUI\Assets\Prefab.meta
     目录           0  2018-02-11 17:34  工程文件\SrollViewUGUI\Assets\scripts\
     文件       19649  2018-02-11 17:17  工程文件\SrollViewUGUI\Assets\scripts\CenterOnChild_UGUI.cs
     文件         262  2018-02-11 13:59  工程文件\SrollViewUGUI\Assets\scripts\CenterOnChild_UGUI.cs.meta
     文件         302  2018-02-11 17:00  工程文件\SrollViewUGUI\Assets\scripts\GoodClass.cs
     文件         262  2018-02-11 16:58  工程文件\SrollViewUGUI\Assets\scripts\GoodClass.cs.meta
     文件         640  2018-02-11 14:55  工程文件\SrollViewUGUI\Assets\scripts\UGUI_Item.cs
     文件         262  2018-02-11 14:45  工程文件\SrollViewUGUI\Assets\scripts\UGUI_Item.cs.meta
     文件        1886  2018-02-11 17:04  工程文件\SrollViewUGUI\Assets\scripts\UGUI_Store.cs
     文件         262  2018-02-11 14:51  工程文件\SrollViewUGUI\Assets\scripts\UGUI_Store.cs.meta
     文件         191  2018-02-11 13:58  工程文件\SrollViewUGUI\Assets\scripts.meta
     文件       17367  2018-02-11 17:29  工程文件\SrollViewUGUI\Assets\ScrollViewScene.unity
     文件         174  2018-02-11 17:29  工程文件\SrollViewUGUI\Assets\ScrollViewScene.unity.meta
     目录           0  2018-02-11 17:34  工程文件\SrollViewUGUI\Assets\Sprites\
     文件      382106  2018-02-11 14:06  工程文件\SrollViewUGUI\Assets\Sprites\StoreBg.png
     文件        2007  2018-02-11 14:06  工程文件\SrollViewUGUI\Assets\Sprites\StoreBg.png.meta
     文件      144734  2018-02-11 14:17  工程文件\SrollViewUGUI\Assets\Sprites\apple.png
     文件        2007  2018-02-11 14:18  工程文件\SrollViewUGUI\Assets\Sprites\apple.png.meta
     文件      160741  2018-02-11 14:42  工程文件\SrollViewUGUI\Assets\Sprites\close.png
     文件        2007  2018-02-11 14:42  工程文件\SrollViewUGUI\Assets\Sprites\close.png.meta
     文件      127833  2018-02-11 14:31  工程文件\SrollViewUGUI\Assets\Sprites\cyj.png
     文件        2007  2018-02-11 14:31  工程文件\SrollViewUGUI\Assets\Sprites\cyj.png.meta
     文件      216957  2018-02-11 14:26  工程文件\SrollViewUGUI\Assets\Sprites\彼岸花.png
............此处省略1171个文件信息

评论

共有 条评论

相关资源