怎么让linearlayout在动态添加图片显示的时候,始终只显示五个,每次添加图片后,自动水平移动,屏幕中间值显示五个图片。
解决方案 »
- android通过摄像头预览、录制视频
- mapview 交通模式定位偏移
- Android 程序内部的一个线程怎样与两个Activity界面通信!最好给出例子
- 新手求教
- GridView可以setWidth吗,我怎么找不到这个方法
- videoview控制视频的播放速度
- android socket的小问题
- andorid与openfire之间的问题
- Android开发时出现java.lang.VerifyError:指向自己的实例化..
- SQLite Database与SQLiteExpertPersonal两者区别、作用、联系?
- android中如何将视频文件作为Activity的背景
- android 文件管理器中发送功能
顺序动态插入到linearlayout,然后把SCROLLVIEW 滚到底,就能保证显示的是最新的5个,并且最右是最新.
顺序动态插入到linearlayout,然后把SCROLLVIEW 滚到底,就能保证显示的是最新的5个,并且最右是最新. 就差最后一个显示到底部了 哥 求详细点
顺序动态插入到linearlayout,然后把SCROLLVIEW 滚到底,就能保证显示的是最新的5个,并且最右是最新. 就差最后一个显示到底部了 哥 求详细点你可以用scrollTo 或 scrollBy, 前者是滚动到某一坐标,后者是滚动的某一距离
顺序动态插入到linearlayout,然后把SCROLLVIEW 滚到底,就能保证显示的是最新的5个,并且最右是最新. 就差最后一个显示到底部了 哥 求详细点你可以用scrollTo 或 scrollBy, 前者是滚动到某一坐标,后者是滚动的某一距离
问题就在这里了 我不知道如何得到这些图片的坐标。 这是我图片显示的代码 我不知道这 X Y的值如何确定 我要达到的效果是始终显示到最后一张图片 不管前面的做坐标 你能帮我确定一下这个X Y的值么
顺序动态插入到linearlayout,然后把SCROLLVIEW 滚到底,就能保证显示的是最新的5个,并且最右是最新. 就差最后一个显示到底部了 哥 求详细点你可以用scrollTo 或 scrollBy, 前者是滚动到某一坐标,后者是滚动的某一距离
问题就在这里了 我不知道如何得到这些图片的坐标。 这是我图片显示的代码 我不知道这 X Y的值如何确定 我要达到的效果是始终显示到最后一张图片 不管前面的做坐标 你能帮我确定一下这个X Y的值么
...我们做的项目是要滚动到中间,是自己算的...要不你试下这个吧 HorizontalScrollView.fullScroll (HorizontalScrollView.FOCUS_RIGHT);
顺序动态插入到linearlayout,然后把SCROLLVIEW 滚到底,就能保证显示的是最新的5个,并且最右是最新. 就差最后一个显示到底部了 哥 求详细点你可以用scrollTo 或 scrollBy, 前者是滚动到某一坐标,后者是滚动的某一距离
问题就在这里了 我不知道如何得到这些图片的坐标。 这是我图片显示的代码 我不知道这 X Y的值如何确定 我要达到的效果是始终显示到最后一张图片 不管前面的做坐标 你能帮我确定一下这个X Y的值么
...我们做的项目是要滚动到中间,是自己算的...要不你试下这个吧 HorizontalScrollView.fullScroll (HorizontalScrollView.FOCUS_RIGHT);
不行 完全不认识这个方法。
顺序动态插入到linearlayout,然后把SCROLLVIEW 滚到底,就能保证显示的是最新的5个,并且最右是最新. 就差最后一个显示到底部了 哥 求详细点你可以用scrollTo 或 scrollBy, 前者是滚动到某一坐标,后者是滚动的某一距离
问题就在这里了 我不知道如何得到这些图片的坐标。 这是我图片显示的代码 我不知道这 X Y的值如何确定 我要达到的效果是始终显示到最后一张图片 不管前面的做坐标 你能帮我确定一下这个X Y的值么
...我们做的项目是要滚动到中间,是自己算的...要不你试下这个吧 HorizontalScrollView.fullScroll (HorizontalScrollView.FOCUS_RIGHT);
不行 完全不认识这个方法。
我写的这三个方法都是HorizontalScrollView的,不是ImageView的.
你得在ImageView控件的父控件LinearLayout外边套一个HorizontalScrollView,再高用这个HorizontalScrollView的fullScroll 方法
顺序动态插入到linearlayout,然后把SCROLLVIEW 滚到底,就能保证显示的是最新的5个,并且最右是最新. 就差最后一个显示到底部了 哥 求详细点你可以用scrollTo 或 scrollBy, 前者是滚动到某一坐标,后者是滚动的某一距离
问题就在这里了 我不知道如何得到这些图片的坐标。 这是我图片显示的代码 我不知道这 X Y的值如何确定 我要达到的效果是始终显示到最后一张图片 不管前面的做坐标 你能帮我确定一下这个X Y的值么
...我们做的项目是要滚动到中间,是自己算的...要不你试下这个吧 HorizontalScrollView.fullScroll (HorizontalScrollView.FOCUS_RIGHT);
不行 完全不认识这个方法。
我写的这三个方法都是HorizontalScrollView的,不是ImageView的.
你得在ImageView控件的父控件LinearLayout外边套一个HorizontalScrollView,再高用这个HorizontalScrollView的fullScroll 方法 知道啊 我老早就嵌套了啊 但是刚刚第三个方法不认识 然后 int a=iv.getScrollY(); int b= iv.getScrollX(); 的值 永远是0 为什么?
为0值的原因你可以参考下 http://bbs.csdn.net/topics/390041147第三个方法应该是认识的... 这样吧我一会写个Sample你自己看下.
activity_scrollexample.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent" android:layout_height="match_parent">
<HorizontalScrollView android:id="@+id/scroll"
android:layout_width="match_parent" android:layout_height="500dp">
<LinearLayout android:id="@+id/container"
android:orientation="horizontal"
android:layout_width="wrap_content" android:layout_height="500dp"/>
</HorizontalScrollView>
<Button android:id="@+id/adder"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:text="点此添加元素"/>
</LinearLayout>ScrollExampleActivity.java
package com.example.helloworld;import android.app.ActionBar.LayoutParams;
import android.app.Activity;
import android.content.Context;
import android.graphics.Color;
import android.os.Bundle;
import android.view.Gravity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.HorizontalScrollView;
import android.widget.LinearLayout;
import android.widget.TextView;
public class ScrollExampleActivity extends Activity implements OnClickListener{ final static int []COLORS={Color.YELLOW, Color.CYAN,Color.DKGRAY,Color.LTGRAY,Color.RED,Color.BLUE,Color.YELLOW,Color.GRAY,Color.MAGENTA}; final static int CHILD_WIDTH=100;
final static int CHILD_HEIGHT=100;
final static int APPEAR_CHILD_MAX=5;
HorizontalScrollView scroller;
LinearLayout container;
Button adder;
Runnable runner;
int childCount=0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.setContentView(R.layout.activity_scrollexample);
scroller=(HorizontalScrollView)findViewById(R.id.scroll);
container=(LinearLayout)findViewById(R.id.container);
adder=(Button)findViewById(R.id.adder);
scroller.setLayoutParams(new LinearLayout.LayoutParams(APPEAR_CHILD_MAX*CHILD_WIDTH, CHILD_HEIGHT));
adder.setOnClickListener(this);
} @Override
public void onClick(View v) {
switch(v.getId()){
case R.id.adder:
addElement();
break;
}
}
private void addElement(){
container.addView(new childView(this,++childCount));
if (runner != null) {
container.removeCallbacks(runner);
}
runner = new Runnable() {
public void run() {
scroller.fullScroll(HorizontalScrollView.FOCUS_RIGHT);
runner = null;
}
};
container.post(runner);
} private class childView extends TextView{
public childView(Context context, int childIndex) {
super(context);
this.setGravity(Gravity.CENTER);
this.setText(String.valueOf(childIndex));
this.setBackgroundColor(COLORS[childIndex%COLORS.length]);
this.setLayoutParams(new LinearLayout.LayoutParams(CHILD_WIDTH,CHILD_HEIGHT));
}
}
}
scrollview里面只能有一个直接子view,所以不能把imageview放到里面去,只能是scrollview里面一个viewgroup(比如linearlayout),然后再使用viewgroup.addview等方法将图片加到里面去,比如:LinearLayout.addView(ImageView);
adder.setOnClickListener(this);是把那个button的单击事件交给activity去处理
addElement()是自己写的一个方法,当每次单击BUTTON的时候添加一个元素到LinearLayout你把代码复制了建个新项目跑一下就什么都明白了.
adder.setOnClickListener(this);是把那个button的单击事件交给activity去处理
addElement()是自己写的一个方法,当每次单击BUTTON的时候添加一个元素到LinearLayout你把代码复制了建个新项目跑一下就什么都明白了. 大哥 我现在是每次点击button 得到一张图片 是不是只要把这个bmp 换成你之前用的颜色为背景就可以了?
adder.setOnClickListener(this);是把那个button的单击事件交给activity去处理
addElement()是自己写的一个方法,当每次单击BUTTON的时候添加一个元素到LinearLayout你把代码复制了建个新项目跑一下就什么都明白了. 大哥 我现在是每次点击button 得到一张图片 是不是只要把这个bmp 换成你之前用的颜色为背景就可以了? 嗯,我只是给你写了个例子,你需要把这里面的关键代码整合到你自己的项目中去.
你把那个TextView替换成你自己的ImageView,然后新的图片过来的时候执行一次addElement()就可以了.
adder.setOnClickListener(this);是把那个button的单击事件交给activity去处理
addElement()是自己写的一个方法,当每次单击BUTTON的时候添加一个元素到LinearLayout你把代码复制了建个新项目跑一下就什么都明白了. 大哥 我现在是每次点击button 得到一张图片 是不是只要把这个bmp 换成你之前用的颜色为背景就可以了? 嗯,我只是给你写了个例子,你需要把这里面的关键代码整合到你自己的项目中去.
你把那个TextView替换成你自己的ImageView,然后新的图片过来的时候执行一次addElement()就可以了. 我实现了图片的显示了 但是最后一个问题,testview显示的数字 我如何控制他 让他显示在图片的正下方?
private class childView extends TextView{
public childView(Context context, int childIndex) {
super(context);
this.setGravity(Gravity.BOTTOM|Gravity.CENTER_HORIZONTAL);
this.setText(String.valueOf(childIndex));
this.setBackgroundColor(COLORS[childIndex%COLORS.length]);
this.setLayoutParams(new LinearLayout.LayoutParams(CHILD_WIDTH,CHILD_HEIGHT));
}
}上面那部分代码改成红色标注的.
用scrollview吧