2012-03-12 1 views
0

나는 다른 드래그 앤 드롭 가능한 항목에 대한 컨테이너 역할을하는 skinnableContainer 있습니다. 이 컨테이너의 놓기 기능은 컨테이너가 추가 된 순간에 부모로부터 추가됩니다. 그 전에 그랬던 것처럼 나는 skinnableContainer에 피부 클래스를 추가 할 때까지사용자 지정 끌어서 놓기 구성 요소 : 스킨을 추가 할 때 끌어서 놓기가 더 이상 작동하지 않습니까?

이 모두 잘 작동, 드래그 항목 이제 아무도 컨테이너에 드롭 할 수 없습니다.

나는 피부 내에서 콘텐츠를 포장 그룹 구성 요소가 어떻게 든 블록의 역할을 가정,하지만 난 그것을 통해 드롭 기능을 허용하는 방법을 잘 모르겠어요?

아이디어가 있으십니까? 아래

편집 스킨 코드 :

<?xml version="1.0" encoding="utf-8"?> 
<s:Skin xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:s="library://ns.adobe.com/flex/spark" alpha.disabled="0.5"> 

<fx:Metadata> 
    [HostComponent("spark.components.SkinnableContainer")] 
</fx:Metadata> 

<s:states> 
    <s:State name="normal" /> 
    <s:State name="disabled" /> 
</s:states> 

<!-- layer 1: border --> 
<s:Rect left="0" right="0" top="0" bottom="0" radiusX="5" radiusY="5"> 
    <s:stroke> 
     <s:SolidColorStroke color="0" alpha="0.50" weight="1" /> 
    </s:stroke> 
</s:Rect> 

<s:Group id="contentGroup" left="0" right="0" top="0" bottom="0" > 
    <s:layout> 
     <s:VerticalLayout/> 
    </s:layout> 
</s:Group> 
</s:Skin> 
+0

없음 코드 : 도움이되지 수 있습니다. 오, 그렇다면 자연스러운 추측 : 커스텀 스킨에는 투명성이 있습니까? – RIAstar

+0

위의 스킨 코드를 추가했습니다. 솔리드 컬러 스트로크에는 알파 = '0.5'가 있습니까? – bmilesp

답변

0

귀하의 사용자 정의 스킨은 배경 칠이 없습니다가, 따라서 그것은 국경을 제외하고 완전히 투명합니다. 이 때문에 아이템을 떨어 뜨릴 수있는 "hitzone"이 없습니다. (바로 지금 당신이 정확히 1px 경계를 목표로한다면 아이템을 떨어 뜨릴 수 있습니다).

이 솔루션은 - 분명히 - 그것을 채우기를 제공하는 것입니다. 당신이 그것을 투명하게보고 싶다면 걱정은 단지 0에 그 alpha을 설정합니다.

<s:Rect left="0" right="0" top="0" bottom="0" radiusX="5" radiusY="5"> 
    <s:fill> 
     <s:SolidColor alpha="0" /> 
    </s:fill> 
    <s:stroke> 
     <s:SolidColorStroke alpha="0.50" /> 
    </s:stroke> 
</s:Rect> 
+0

우수! 고맙습니다! – bmilesp

관련 문제