⑴ Android studio 自动换行
我用的是apicloud studio,换行在窗口--首选项--Aptana Studio--Edictors--Enable word wrap。勾选了之后重启软件
⑵ android 中组件怎么换行
应用中获取会用到需要自动换行的控件,而这并不是一般的线性或者相对布局就能实现的,在此分享下自定义控件。原型是在网上找到的,在此稍作了修改。
这是设计出的样稿,样稿中的较高的图片是从一个数据集中的穿插在另一个数据集中的,Textview的长度需要根据文字的长度不同而设置,而左右需要平分,做法如下:
1.将总体分为两个数据集:左&右,并用2个LinearLayout分别装自定义控件
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_marginLeft="5dip"
android:layout_marginRight="5dip"
android:layout_marginTop="5dip">
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical">
android:layout_width="fill_parent"
android:layout_height="wrap_content">
</<span style="line-height: 21px;">PredicateLayout>
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical">
<<span style="line-height: 21px;">PredicateLayout android:id="@+id/righttab"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
</<span style="line-height: 21px;">PredicateLayout>
2.自定义控件
public class PredicateLayout extends LinearLayout {
int mLeft, mRight, mTop, mBottom;
Hashtable map = new Hashtable();
public PredicateLayout(Context context) {
super(context);
}
public PredicateLayout(Context context, int horizontalSpacing, int verticalSpacing) {
super(context);
}
public PredicateLayout(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int mWidth = MeasureSpec.getSize(widthMeasureSpec);
int mCount = getChildCount();
int mX = 0;
int mY = 0;
mLeft = 0;
mRight = 0;
mTop = 5;
mBottom = 0;
int j = 0;
View lastview = null;
for (int i = 0; i < mCount; i++) {
final View child = getChildAt(i);
child.measure(MeasureSpec.UNSPECIFIED, MeasureSpec.UNSPECIFIED);
// 此处增加onlayout中的换行判断,用于计算所需的高度
int childw = child.getMeasuredWidth();
int childh = child.getMeasuredHeight();
mX += childw; //将每次子控件宽度进行统计叠加,如果大于设定的高度则需要换行,高度即Top坐标也需重新设置
Position position = new Position();
mLeft = getPosition(i - j, i);
mRight = mLeft + child.getMeasuredWidth();
if (mX >= mWidth) {
mX = childw;
mY += childh;
j = i;
mLeft = 0;
mRight = mLeft + child.getMeasuredWidth();
mTop = mY + 5;
//PS:如果发现高度还是有问题就得自己再细调了
}
mBottom = mTop + child.getMeasuredHeight();
mY = mTop; //每次的高度必须记录 否则控件会叠加到一起
position.left = mLeft;
position.top = mTop + 3;
position.right = mRight;
position.bottom = mBottom;
map.put(child, position);
}
setMeasuredDimension(mWidth, mBottom);
}
@Override
protected LayoutParams generateDefaultLayoutParams() {
return new LayoutParams(1, 1); // default of 1px spacing
}
@Override
protected void onLayout(boolean changed, int l, int t, int r, int b) {
// TODO Auto-generated method stub
int count = getChildCount();
for (int i = 0; i < count; i++) {
View child = getChildAt(i);
Position pos = map.get(child);
if (pos != null) {
child.layout(pos.left, pos.top, pos.right, pos.bottom);
} else {
Log.i("MyLayout", "error");
}
}
}
private class Position {
int left, top, right, bottom;
}
public int getPosition(int IndexInRow, int childIndex) {
if (IndexInRow > 0) {
return getPosition(IndexInRow - 1, childIndex - 1)
+ getChildAt(childIndex - 1).getMeasuredWidth() + 8;
}
return getPaddingLeft();
}
}
3.将数据分别填充到左右两个控件中
这应该算是自动换行经典实例了吧,相信这个搞定以后同类型的需求都不成问题了。
⑶ 安卓开发应用中text中如何自由让文本换行,想在哪换就在哪换,详细点哦!多谢多谢!我是菜鸟。
TextView中显示文本,让文本换行,第一种:设置TextView的宽和高,第二种:设置属性maxLength来设置最多显示字数,第三种:就是显示的文本中想换行的位置加\n!
⑷ android textview 怎么换行
textView如果想要强制换行的话,必须先把TextView显示方式修改为多行(android:singleLine="false"),然后才能换行。
方法一般用两种:
1、在字符串里加入“ ”,如"abc rc";
2、把TextView设置为固定宽度,然后让系统自动换行。如android:layout_width="100dp";
(4)安卓开发程序怎么换行扩展阅读
Class Overview
向用户显示文本,并可选择允许他们编辑文本。TextView是一个完整的文本编辑器,但是基类为不允许编辑;其子类EditText允许文本编辑。
允许用户复制部分或全部内容,将其粘贴到别的地方,设置XML属性Android:textisselectable :“真” 或设置相关方法 settextisselectable 为“真”。textisselectable flag 允许用户在TextView选择手势,从而触发系统内置的复制/粘贴控件。
Displays text to the user and optionally allows them to edit it. A TextView is a complete text editor, however the basic class is configured to not allow editing; seeEditTextfor a subclass that configures the text view for editing.
To allow users to some or all of the TextView's value and paste it somewhere else, set the XML attributeandroid:textIsSelectableto "true" or callsetTextIsSelectable(true). ThetextIsSelectableflag allows users to make selection gestures in the TextView, which in turn triggers the system's built-in /paste controls.
⑸ 求解在安卓开发中,如何换行,/n完全无效
应该是\n,你那个斜杠反了
<TextView
android:layout_height="wrap_content"
android:text="1\n2"
android:layout_width="wrap_content"
android:textSize="20sp"/>
这样就行了
⑹ Android文本换行问题。
根据本人测试:将数据封装到模型类后,在Java文件中使用textViewObj.setText(obj.getXXX()).
无论是模拟器中,还是真机中,均可换行。
测试代码:
{
/**.*/
@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextViewtx=(TextView)findViewById(R.id.hello);
Manm=newMan();
m.setAdd("aaaaa bbbb");
m.setName("dddd cccc");
tx.setText(m.getAdd());
}
}
Man类代码:
publicclassMan{
Stringname;
Stringadd;
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
this.name=name;
}
publicStringgetAdd(){
returnadd;
}
publicvoidsetAdd(Stringadd){
this.add=add;
}
}
附上一张运行图片吧。
⑺ 安卓手机打字怎么换行
安卓手机打字换行的方法:⑻ 安卓软件开发中怎么让一个EditText自动换行
packagecom.example.android.helloactivity;
importandroid.content.Context;
importandroid.graphics.Paint;
importandroid.graphics.Rect;
importandroid.text.TextPaint;
importandroid.util.AttributeSet;
importandroid.view.Display;
importandroid.view.KeyEvent;
importandroid.view.WindowManager;
importandroid.widget.EditText;
{
intscreenWidth=0;
intscreenHeight=0;
intcurrentHeight=0;
Contextcontext=null;
publicMyEditor(Contextcontext,AttributeSetattrs){
super(context,attrs);
this.context=context;
currentHeight=getHeight();
WindowManagerwindowManager=(WindowManager)this.context
.getSystemService(Context.WINDOW_SERVICE);
Displaydisplay=windowManager.getDefaultDisplay();
//取得屏幕宽度和高度
screenWidth=display.getWidth();
screenHeight=display.getHeight();
setScrollBarStyle(DRAWING_CACHE_QUALITY_AUTO);
/*Rectrect=newRect();
Paintp=newPaint();
p.setTypeface(getTypeface());
p.getTextBounds("A",0,1,rect);
fontWidth=rect.width();*/
}
@Override
publicbooleanonKeyUp(intkeyCode,KeyEventevent){
TextPaintpaint=getPaint();
floatlen=paint.measureText(getText().toString());
//计算得到当前应该有几行
intline=((int)len/screenWidth+1);
getEllipsize();
setFrame(0,0,screenWidth,line*60);
//setHeight(line*60);
//setMarqueeRepeatLimit(line);
//setMaxHeight(line*60);
//setLines(line);
//setBackgroundColor(Color.WHITE);
returnfalse;
}
}
⑼ 安卓手机怎么空格到下一行
安卓手机空格到下一行,具体操作如下。
1、首先在打开的微信程序页面中点击右下角的“我”选项。
2、然后在打开的“我”页面中点击打开“设置”选项。
3、进入“设置”页面后点击“聊天”选项,进入聊天设置页面。
4、打开聊天页面后,将“回车键发送消息”右侧的开关按钮关闭。
5、返回与联系人的聊天界面中,在文字输入框内输入文字按下回车键即可换行在第二行内输入文字了。