2012-05-05 3 views
0

저는 AIR를 사용하여 BlackBerry PlayBook 용 앱을 개발하고 있습니다. 사용자 지정 단추를 누르면 그라디언트와 다른 그라디언트로 사용자 지정 단추를 만들어야합니다. 텍스트는 필요에 따라 검정색 또는 흰색이어야합니다 (앱의 다른 부분에 대해 저에게 결정됨).BlackBerry Airphone의 사용자 정의 버튼?

그래서 이런 종류의 버튼을 얻을 수있는 방법이 있습니까?

도움을 주시면 큰 도움이됩니다.

+0

RIM이 Adobe를 인수했는지는 몰랐습니다! : p – TheDarkIn1978

+0

@ TheDarkIn1978 PlayBook 앱은 C/C++, BB 플러그인 또는 RIM의 WebWorks SDK를 사용하는 Adobe Flash Builder로 개발 될 수 있습니다. – Roshnal

+0

@Roshnal은 Playbook AIR SDK에 완전히 익숙하지 않습니다. Flex를 사용하고 있습니까? – francis

답변

1

음 ...

  1. 당신은 프로그래밍 방식으로 드로잉 API와 버튼 그라데이션을 만들거나 만들고 각 상태에 대한 삽입 비트 맵 수 있습니다.

  2. 그런 다음 그라디언트 애셋과 textField 객체로 구성된 맞춤 버튼 클래스를 마우스/터치 이벤트가있는 자식으로 만들어 시각적 변경을 제어하고 버튼 맞춤 이벤트를 전달할 수 있습니다.

  3. 마지막으로 사용자 정의 단추 이벤트를 만들 수 있습니다. 당신이 점화 구성 요소 버튼을 사용하는 경우

+0

가장 쉬운 방법에 대한 코드 샘플을 제공해 주시겠습니까? 죄송합니다. AIR에서 BB 개발을 처음 접해 보았습니다. – Roshnal

+0

PlayBook의 개발과 관련이 없습니다. 기본 ActionScript 프로그래밍입니다. 나는 AS3를 배울 것을 제안한다. – TheDarkIn1978

+0

나는 PlayBook 개발을하면서 AS3를 점차적으로 배우려고 생각하고 있었고 이미 Java, Python 및 C++ 개발에 많은 경험이 있으므로 어려울 것이라고 생각했습니다. – Roshnal

0

에 대한 사용자 정의 button skin를 만들어야합니다, 당신은 당신이 어떤 피부 개체를 전달할 수있는 SkinClass 속성을 사용해야합니다. 이 스킨에서는 상향, 하향, 이상, 사용 중지 등의 상태를 설정할 수 있습니다.

// 피부 클래스

<?xml version="1.0" encoding="utf-8"?> 
<s:Skin xmlns:fx="http://ns.adobe.com/mxml/2009" 
    xmlns:s="library://ns.adobe.com/flex/spark"> 
<!-- host component --> 
<fx:Metadata> 
    [HostComponent("ImageButton")] 
</fx:Metadata> 

<!-- states --> 
<s:states> 
    <s:State name="down" /> 
    <s:State name="over" /> 
    <s:State name="up" /> 
    <s:State name="disabled" /> 
</s:states> 

<!-- SkinParts 
name=labelDisplay, type=spark.core.IDisplayText, required=false 
name=iconDisplay, type=spark.primitives.BitmapImage, required=false 
--> 
<s:BitmapImage source="@Embed('add_audio.png')"  includeIn="disabled" /> 
<s:BitmapImage source="@Embed('add_audio.png')"  includeIn="up" /> 
<s:BitmapImage source="@Embed(add_audio_press.png')" includeIn="over"/> 
<s:BitmapImage source="@Embed('add_audio_press.png')" includeIn="down"/> 
를 생성하는 코드

// 사용자 정의 버튼 클래스를 만들

package 

{ 수입 spark.components.Button;

사용과 같은이 두 클래스

public class ImageButton extends Button 
{ 
    public function ImageButton() 
    { 
     super(); 
     this.buttonMode=true; 
    } 
} 

}.

<local:ImageButton x="2" y="43" skinClass="skins.audio.Cut" />