ایجاد افکت برای TextView در اندروید

شنبه 27 خرداد 1396

در این مقاله قصد داریم که حالت افکت برای متن خود ایجاد نماییم به این صورت که زمانی که کاربر بر روی آن زد متن مورد نظر یک حالت افکت داشته باشد این را برای بعضی از اپلیکیشن های خود استفاده می نماییم.

ایجاد افکت برای TextView در اندروید

برای اینکار ابتدا در کلاس جاوا قطعه کد زیر را قرار می دهیم.

import android.app.Activity;
import android.graphics.EmbossMaskFilter;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;

public class MainActivity extends Activity {

 TextView textview;
 EmbossMaskFilter embossmaskfilter = new EmbossMaskFilter(
 new float[]{ 0f, -1f, 0.5f },
 0.7f,
 12,
 8.0f
 );
 @Override
 protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_main);
 
 textview = (TextView)findViewById(R.id.textView1);
 
 textview.setLayerType(View.LAYER_TYPE_SOFTWARE,null);
 
 textview.getPaint().setMaskFilter(embossmaskfilter);
 }
}

در قسمت layout قطعه کد زیر را قرار دهید:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:tools="http://schemas.android.com/tools"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:paddingBottom="@dimen/activity_vertical_margin"
 android:paddingLeft="@dimen/activity_horizontal_margin"
 android:paddingRight="@dimen/activity_horizontal_margin"
 android:paddingTop="@dimen/activity_vertical_margin"
 tools:context="com.debosseffect_android_examples.com.MainActivity" >

 <TextView
 android:id="@+id/textView1"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_centerHorizontal="true"
 android:layout_centerVertical="true"
 android:text="TEXTVIEW TEXT"
 android:gravity="center"
 android:textAppearance="?android:attr/textAppearanceLarge"
 android:textSize="60dp"
 android:textStyle="bold"
 android:textColor="#05c3af" />

</RelativeLayout>

خروجی به صورت زیر خواهد بود:

برنامه نویسان

نویسنده 3355 مقاله در برنامه نویسان

کاربرانی که از نویسنده این مقاله تشکر کرده اند

تاکنون هیچ کاربری از این پست تشکر نکرده است

در صورتی که در رابطه با این مقاله سوالی دارید، در تاپیک های انجمن مطرح کنید