Java 如何在线性布局中拖动时更改TexView的文本大小
我有一个线性布局,其中包含了文本视图的数量。如果我们触摸每个文本视图,它会改变其文本大小 我想这样做,如果我在第一个触摸,并保持在线性布局拖动,而不拉我的手指了。有我手指的TextView应该改变它的大小,如果我把它从TextView上拖开,它的大小应该会恢复正常,依此类推 我的主要活动是:Java 如何在线性布局中拖动时更改TexView的文本大小,java,android,xml,Java,Android,Xml,我有一个线性布局,其中包含了文本视图的数量。如果我们触摸每个文本视图,它会改变其文本大小 我想这样做,如果我在第一个触摸,并保持在线性布局拖动,而不拉我的手指了。有我手指的TextView应该改变它的大小,如果我把它从TextView上拖开,它的大小应该会恢复正常,依此类推 我的主要活动是: public class MainActivity extends Activity implements OnTouchListener{ @Override protected voi
public class MainActivity extends Activity implements OnTouchListener{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView firstText, secondText;
firstText = (TextView) findViewById(R.id.firstTextView);
secondText = (TextView) findViewById(R.id.secondTextView);
firstText.setOnTouchListener(this);
secondText.setOnTouchListener(this);
}
@Override
public boolean onTouch( View v, MotionEvent event ) {
switch(event.getAction() & MotionEvent.ACTION_MASK) {
case MotionEvent.ACTION_DOWN:
case MotionEvent.ACTION_POINTER_DOWN:
((TextView) v).setTextSize(40);
break;
case MotionEvent.ACTION_CANCEL:
case MotionEvent.ACTION_UP:
case MotionEvent.ACTION_POINTER_UP:
((TextView) v).setTextSize(20);
break;
}
return false;
}
}
xml是:
<LinearLayout
android:id="@+id/ll"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/btn_bg"
android:orientation="horizontal"
android:weightSum="0.9" >
<TextView
android:id="@+id/firstTextView"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:text="@string/hello_world" />
<TextView
android:id="@+id/secondTextView"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight="0.5"
android:text="@string/hello_world"/>
</LinearLayout>
请帮忙。我想要的行为,如果我触摸firstTextView,它的大小我长大了,当手指超出firstTextView的范围时,我的手指移向secondTextView,它的文本大小变得正常,在不拔下手指的情况下,我继续移向secondTextView,每当我的手指进入secondTextView的范围时,它的大小都会改变
问题是当finger进入secondTextView时,它不会生效。您可以在textView上调用setOnTouchListener。然后根据您希望大小增长的方式,使用传入的触摸事件上的字段记录触摸时间或移动的距离,以更改文本视图的大小。任何教程都会非常有用。提前感谢为TextView使用setonTouchListener方法。我认为本教程会有所帮助@Piyush请查看我的编辑以进一步澄清。@Ahmed bhai我不想替换我的TextView,我只需要在线性布局中突出显示拖动事件中TextView的文本。请参阅我的编辑代码。谢谢你的快速回复