簡體   English   中英

帶有圖標的Flex文本輸入,如Mac OS X搜索文本輸入

[英]Flex Text Input with icon inside like mac os x search text input

我正在嘗試擴展flex中的文本輸入以支持圖標,就像mac os x搜索文本輸入的右側對齊灰色圓圈,文本輸入具有addChild方法,但此方法不適用於我。

有辦法做到這一點嗎?

提前致謝

一個更簡單的方法是創建一個看起來像您想要的文本輸入的mxml組件。 我從未見過mac OSX搜索框,但根據您的描述,該組件基於畫布並具有白色背景,然后適當的寄宿生可以包含圖像和文本輸入而無需寄宿生。 我認為,這將為您提供您想要的外觀。

我找到了一個解決方案:D這是代碼

訣竅是覆蓋updateDisplayList。

駭客入侵。

package
{
import flash.display.DisplayObject;

import mx.controls.Image;
import mx.controls.TextInput;
import mx.core.mx_internal;

use namespace mx_internal;

public class MyTextInput extends TextInput
{
    private var _image:Image;

    public function MyTextInput()
    {
        super();
    }

    override protected function createChildren():void
    {
        super.createChildren();

        _image = new Image();
        _image.source = "http://sstatic.net/so/img/replies-off.png",

        addChild(DisplayObject(_image));
    }

    override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void
    {
        super.updateDisplayList(unscaledWidth, unscaledHeight);

        this._image.width = 16;
        this._image.height = 16;

        this._image.x = this.width - this._image.width - 5;
        this._image.y = this.height - this._image.height;

        this.textField.width = this.width - this._image.width - 5;
    }
}
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM