我正在创建一个Android应用程序,我需要创建一个textview with view more / view less按钮,如果行数越过4或5.我需要做什么才能在我的textview中实现这个
答案 0 :(得分:1)
我之前没有这样做过,但是这样的事情应该有效: 使您的类实现TextWatcher接口。
创建TextView时,请添加textView.addTextChangedListener(this);
然后添加:
public void afterTextChanged(Editable s) {
if(textView.getLineCount() >= 4) {
ToggleButton showMoreToggle = (ToggleButton) findViewById(R.id.showMoreToggle);
showMoreToggle.setVisibility(View.VISIBLE);
}
}
public void onTextChanged(CharSequence s,int start, int before, int count) {}
public void beforeTextChanged(CharSequence s, int start, int count, int after) {}
然后在XML中创建一个ToggleButton并添加android:click="onClick"
和android:visibility="gone"
。然后在您的活动代码中输入:
public void onClick(View v) {
ToggleButton tb = (ToggleButton) v;
textView.setMaxLines(tb.isChecked() ? 10 : 4);
}