点击文本视图以显示文本的代码

时间:2013-03-04 18:51:34

标签: android

我正在开发一个Android应用程序,这是我的第一个应用程序开发,

根据我的要求,我需要代码来实现图像中的UI。

跳跃图像正在解释我的要求。下图是App UI视图。感谢..

enter image description here

我使用了以下代码,但它无效。任何人都可以找到错误..

 - DrinkActivity.java

TextView t ;
public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_drink);
            t = (TextView)findViewById(R.id.TextView01);
            t.setOnClickListener((android.view.View.OnClickListener) this);
            }
public void onClick(View arg0) {
            t.setText("My text on click");  
            }

 - activity_drink.xml


<LinearLayout 
    android:id="@+id/LinearLayout01" 
    android:layout_width="wrap_content"  
    android:layout_height="wrap_content">

</LinearLayout>

<ListView
    android:id="@+id/ListView01"
    android:layout_width="wrap_content"
    android:layout_height="match_parent" >
</ListView>
<LinearLayout 
    android:id="@+id/LinearLayout02" 
    android:layout_width="wrap_content"   
    android:layout_height="wrap_content">

</LinearLayout>

<TextView android:text="This is my first text"
 android:id="@+id/TextView01" 
 android:layout_width="wrap_content" 
 android:textStyle="bold"
 android:textSize="28sp"
 android:editable="true"
 android:clickable="true"
 android:layout_height="wrap_content"
 android:onClick="onClick">

 </TextView>

1 个答案:

答案 0 :(得分:0)

您可以通过设计2个片段来实现此行为:

1。第一个将是一个简单的TextView片段,仅显示您的标签文字。

2. 第二个片段将作为LinaerLayout垂直布局,一个接一个地包含2个TextView,第一个将与第一个片段中的TextView相同,而第二个TextView将包含标签说明。

然后您应该做的就是点击第一个片段,用第二个片段替换它,使用此代码:

 if (!isTabOpen)
 {
     fragmentTransaction = fragmentManager.beginTransaction();
     fragmentTransaction.remove(TabFragment)
     .add(R.id.containerForFragments,TabAndDescriptionFragment)
     .commit();
 }
 else
 {
      fragmentTransaction = fragmentManager.beginTransaction();
     fragmentTransaction.remove(TabAndDescriptionFragment)
     .add(R.id.containerForFragments,TabFragment)
     .commit(); 
 }

创建了plusButtonFragment和userNewFragment。