2012-01-22 61 views

Trả lời

4

Android không có tính năng như vậy ban đầu. Một vài tháng trước, tôi đã phải phát triển một tính năng tương tự, và tôi đã sử dụng một số thủ thuật. Trong trường hợp đó tôi đã sử dụng thuộc tính shadow. Trong trường hợp của bạn trên TextView.onDraw(), hãy gọi super() hai lần. Đặt kiểu chữ in đậm và đặt màu thành màu đường viền và gọi một lần và đặt bình thường và gọi lần thứ hai. Điều đó sẽ hiệu quả.

+1

** Android không có tính năng như vậy ban đầu. ** bạn có chắc chắn không? Tôi nghĩ rằng quá trình của bạn là dài. –

+0

@CapDroid Giải pháp của bạn có vẻ tốt, Câu trả lời của tôi quá cũ :) – lulumeya

12

Bạn có thể tạo phong cách cho điều này ..

Đây là sample style cho đường biên giới trên văn bản ..

Style.xml

<resources xmlns:android="http://schemas.android.com/apk/res/android"> 
<style name="shadoweffect"> 
     <item name="android:paddingLeft">4px</item> 
     <item name="android:paddingBottom">4px</item> 
     <item name="android:textColor">#FFFFFF</item> 
     <item name="android:textSize">25sp</item> 
     <item name="android:shadowColor">#000000</item> 
     <item name="android:shadowDx">0</item> 
     <item name="android:shadowDy">0</item> 
     <item name="android:shadowRadius">3</item> 
    </style> 

</resources> 

Áp dụng phong cách trên TextView của mình

<TextView 
     style="@style/shadoweffect" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="your_text" /> 
+0

Cảm ơn @Niranj Patel Hoạt động của nó trong android 7 cũng –

0

Bạn có thể sử dụng bất kỳ TextEd nào itors để tạo ra một biên giới cho văn bản ur và bạn có thể thêm vào mã

+0

Tôi nghĩ OP đang tìm kiếm giải pháp bằng cách đặt giá trị trong XML? – Flexicoder

20

Hãy thử điều này ..

<TextView 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:text="@string/hello_world" 
    android:textColor="#f8f36a" 
    android:textSize="65sp" 
    android:shadowColor="#ff0000" 
    android:shadowRadius="2"/> 

và kết quả là

result

Bạn có thể tạo biên giới tùy chỉnh cho văn bản như thế này .. Here is a sample application.

enter image description here

+0

Tôi đã sử dụng MagicTextView trong dự án của mình. Trong Android 4.4 (API 19) Tôi gặp phải một vấn đề: ứng dụng của tôi bị treo ở đâu đó trong thư viện C. Nó chỉ xảy ra trong Android 4.4. Và ứng dụng của tôi hoạt động tốt, nếu tôi sử dụng TextView thay vì MagicTextView. – ivan

Các vấn đề liên quan