Android Can';无法获取textview并\n正常工作
我代表一位朋友发布了这篇文章,我没有android SDK来测试这一点,因此如果这是非常明显的,我深表歉意: 正在尝试使用新行上的时间戳更新TextView:Android Can';无法获取textview并\n正常工作,android,textview,Android,Textview,我代表一位朋友发布了这篇文章,我没有android SDK来测试这一点,因此如果这是非常明显的,我深表歉意: 正在尝试使用新行上的时间戳更新TextView: viewText = viewText + "\n"+ String.format("%d:%02d:%02d", minutes, seconds,millis); 但不管发生什么事情,结果总是一样的 代码如下: package com.example.polyrhythm; import android.app.Activ
viewText = viewText + "\n"+ String.format("%d:%02d:%02d", minutes, seconds,millis);
但不管发生什么事情,结果总是一样的
代码如下:
package com.example.polyrhythm;
import android.app.Activity;
import android.os.Bundle;
import android.os.CountDownTimer;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
public class MainActivity extends Activity implements OnClickListener {
TextView showResults, countDown;
long start, stop;
String sResults = "";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button bStart = (Button) findViewById(R.id.startButton);
Button bStop = (Button) findViewById(R.id.rhythmOne);
showResults = (TextView) findViewById(R.id.resultTextView);
// countDown = (TextView) findViewById(R.id.countDownTextView);
showResults.setSingleLine(false);
bStart.setOnClickListener(this);
bStop.setOnClickListener(this);
start = 0;
}
@Override
public void onClick(View arg0) {
switch (arg0.getId()) {
case R.id.startButton:
new CountDownTimer(5000, 1000) {
public void onTick(long millisUntilFinished) {
// countDown.setText("" + millisUntilFinished / 1000);
}
public void onFinish() {
// countDown.setVisibility(View.GONE);
start = System.currentTimeMillis();
}
}.start();
break;
case R.id.rhythmOne:
stop = System.currentTimeMillis();
if (start != 0) {
String viewText = "";
long result = stop - start;
int millis = (int) result;
int seconds = (int) result / 1000;
int minutes = seconds / 60;
millis = millis % 100;
seconds = seconds % 60;
viewText = viewText
+ "\n"
+ String.format("%d:%02d:%02d", minutes, seconds,
millis);
showResults.setText(viewText);
}
break;
}
}
}
布局文件:
<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=".MainActivity" >
<Button
android:id="@+id/rhythmOne"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:text="----------------" />
<Button
android:id="@+id/startButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/rhythmOne"
android:layout_centerHorizontal="true"
android:text="Start" />
<ScrollView
android:id="@+id/scrollView1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_above="@+id/startButton"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/resultTextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Result\n"
android:lines="2" />
</LinearLayout>
</ScrollView>
</RelativeLayout>
它可以是:
android:lines=“2”
默认情况下,
TextView
应该已经有多行
因此,我假设问题出在布局文件中(您尚未发布)
尝试暂时用XML对文本进行编码,看看是否出现了问题
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="firstline\nsecondline"
android:textAppearance="?android:attr/textAppearanceMedium" />
文本视图是多行的吗?尝试以下操作:showResults.setSingleLine(false);您是否尝试过多个副本中的任何解决方案?是,代码有setSingleLine(false)。注释掉showResults.setText(viewText)
并将android:text=“Result\n”
替换为android:text=“firstline\nsecondline”
。如果您这样做,是否会出现问题?是或否。同样,如果所有其他方法都失败了。只需制作两个文本视图,并将它们放在彼此下方即可。但老实说,这没有意义,因为我复制了你的布局,它在这里工作得很好。