Welcome,
Guest
. Please
login
or
register
.
March 23, 2025, 08:51:04 AM
Home
Help
Search
Login
Register
Tasharen Entertainment Forum
»
Support
»
NGUI 3 Support
»
Bug: UISlider does not move thumb when foreground is FilledSprite - NGUI 3.0.6
« previous
next »
Print
Pages: [
1
]
Author
Topic: Bug: UISlider does not move thumb when foreground is FilledSprite - NGUI 3.0.6 (Read 4055 times)
soofaloofa
Newbie
Thank You
-Given: 0
-Receive: 0
Posts: 27
Bug: UISlider does not move thumb when foreground is FilledSprite - NGUI 3.0.6
«
on:
November 23, 2013, 11:05:59 PM »
Hi,
I upgraded my NGUI 2.7 project to NGUI 3.0.6 and my Slider is no longer working. Specifically the thumb is no longer being moved when the UISprite on the slider foreground is a FilledSprite.
Kevin
Logged
ArenMook
Administrator
Hero Member
Thank You
-Given: 337
-Receive: 1171
Posts: 22,128
Toronto, Canada
Re: Bug: UISlider does not move thumb when foreground is FilledSprite - NGUI 3.0.6
«
Reply #1 on:
November 24, 2013, 01:33:09 AM »
Thanks, I've fixed it locally. You can fix it by replacing UISlider.ForceUpdate function with this one:
public
override
void
ForceUpdate
(
)
{
base
.
ForceUpdate
(
)
;
if
(
mFG
!=
null
&&
thumb
!=
null
)
{
Vector3
[
]
corners
=
mFG
.
worldCorners
;
if
(
isHorizontal
)
{
if
(
mSprite
!=
null
&&
mSprite
.
type
==
UISprite
.
Type
.
Filled
)
{
Vector3 v0
=
Vector3
.
Lerp
(
corners
[
0
]
, corners
[
1
]
, 0
.
5f
)
;
Vector3 v1
=
Vector3
.
Lerp
(
corners
[
2
]
, corners
[
3
]
, 0
.
5f
)
;
thumb
.
position
=
Vector3
.
Lerp
(
v0, v1, isInverted
?
1f
-
value
:
value
)
;
}
else
{
thumb
.
position
=
isInverted
?
Vector3
.
Lerp
(
corners
[
0
]
, corners
[
1
]
, 0
.
5f
)
:
Vector3
.
Lerp
(
corners
[
2
]
, corners
[
3
]
, 0
.
5f
)
;
}
}
else
{
if
(
mSprite
!=
null
&&
mSprite
.
type
==
UISprite
.
Type
.
Filled
)
{
Vector3 v0
=
Vector3
.
Lerp
(
corners
[
0
]
, corners
[
3
]
, 0
.
5f
)
;
Vector3 v1
=
Vector3
.
Lerp
(
corners
[
1
]
, corners
[
2
]
, 0
.
5f
)
;
thumb
.
position
=
Vector3
.
Lerp
(
v0, v1, isInverted
?
1f
-
value
:
value
)
;
}
else
{
thumb
.
position
=
isInverted
?
Vector3
.
Lerp
(
corners
[
0
]
, corners
[
3
]
, 0
.
5f
)
:
Vector3
.
Lerp
(
corners
[
1
]
, corners
[
2
]
, 0
.
5f
)
;
}
}
}
}
Logged
jeldrez
Sr. Member
Thank You
-Given: 8
-Receive: 4
Posts: 352
Re: Bug: UISlider does not move thumb when foreground is FilledSprite - NGUI 3.0.6
«
Reply #2 on:
November 25, 2013, 03:22:38 PM »
I'm having this issue:
Assets
/
MNT
/
Scripts
/
Characters
/
Cooldown
.
cs
(
57
,
53
)
:
error CS0122
:
`UISlider
.
foreground
' is inaccessible due to its protection level
when trying to get the UISlider foreground:
public
UISlider sliderAsset
;
public
void
SomeFunction
(
)
{
UISprite slider
=
sliderAsset
.
foreground
.
gameObject
.
GetComponent
<
UISprite
>
(
)
;
}
Logged
ArenMook
Administrator
Hero Member
Thank You
-Given: 337
-Receive: 1171
Posts: 22,128
Toronto, Canada
Re: Bug: UISlider does not move thumb when foreground is FilledSprite - NGUI 3.0.6
«
Reply #3 on:
November 25, 2013, 06:25:38 PM »
Change it to 'foregroundWidget'. I left a note about it on the now-hidden property.
Logged
jeldrez
Sr. Member
Thank You
-Given: 8
-Receive: 4
Posts: 352
Re: Bug: UISlider does not move thumb when foreground is FilledSprite - NGUI 3.0.6
«
Reply #4 on:
November 25, 2013, 07:18:34 PM »
Ok.
Thanks Aren.
Logged
Print
Pages: [
1
]
« previous
next »
Tasharen Entertainment Forum
»
Support
»
NGUI 3 Support
»
Bug: UISlider does not move thumb when foreground is FilledSprite - NGUI 3.0.6