android:id="@+id/btn_maininterface"
里面的android:layout_height="match_parent"造成的另:android:id="@+id/btn_bid" 里面的android:layout_below="@id/btn_maininterface"没有报错么?
“@id/btn_maininterface is not a sibling in the same RelativeLayout”
里面的android:layout_height="match_parent"造成的另:android:id="@+id/btn_bid" 里面的android:layout_below="@id/btn_maininterface"没有报错么?
“@id/btn_maininterface is not a sibling in the same RelativeLayout”
解决方案 »
- drawable-ldpi 内存泄露问题
- 在窗体上放了一个WebView显示某个网页,为什么真机上会调用浏览器打开?
- android文字大小的适配
- Android源码编译出现错误
- 3dmax材质导入到android opengl es
- JNI:封装Android中Canvas类下的drawBitmap()函数问题请教!
- 在监听用户按键时遇到问题(在线求解!)
- ListView 加载数据 Holder 数据项重复 , 乱序
- 真机运行使用stopService,service停止了,但功能未停止。
- 开一个android 平台 的APP,怎么跳转到QQ登录界面
- Android 如何定制OTA升级时优化应用界面
- 关于android studio编译出错的问题
@ bloom_0721 谢谢您的回答改了后可以显示出 4个图片了。 是没有报 这个错误的““@id/btn_maininterface is not a sibling in the same RelativeLayout”[/quote”但是 下面的三个小图标太小了,我设置了 高 跟 宽的 大小后, 就不能显示出来了。
然后 我把下面的三个小图 的 其中两个图片设置了 高和宽的大小,另外一个小图 高 和宽设置为 wrap_content
结果 设置具体大小 的小图是不能显示出来的。 也就是 设置为 wrap_content的是可以显示的。请问为什么呢? 因为那三个小图太小了, 要设置大些, 请问应该怎么处理呢?
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ImageView
android:id="@+id/btn_maininterface"
android:src="@drawable/btn_maininterface"
android:layout_width="fill_parent"
android:layout_height="260dp"
android:scaleType="fitStart"
/>
<RelativeLayout android:id="@+id/RelativeLayout02"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/btn_bid"
android:paddingLeft="40.0sp"
android:src="@drawable/btn_bid"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="50.0dip"
android:layout_weight="1"
android:layout_below="@id/btn_maininterface"
/>
<ImageView
android:id="@+id/btn_der"
android:src="@drawable/btn_der"
android:layout_width="60dp"
android:paddingLeft="80.0sp"
android:layout_height="60dp"
android:layout_toRightOf="@id/btn_bid"
android:layout_alignTop="@id/btn_bid"
android:layout_weight="1"
/>
<ImageView
android:id="@+id/btn_info"
android:paddingLeft="95.0sp"
android:src="@drawable/btn_info"
android:layout_width="60dp"
android:layout_height="60dp"
android:layout_toRightOf="@id/btn_der"
android:layout_alignTop="@id/btn_der"
android:layout_weight="1"
/>
</RelativeLayout>
</LinearLayout>
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"//这个是相对于整个高占有几分(例如4个图片都设置为1,则都占屏幕高的1/4)
如果想都正常像是就wrap_content。
如果显示不下,可以用ScrollView。
但是按照您所说的 用
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1
还是不能显示 那三个小图呀麻烦再回复下不能用scrollview 要全部显示出来。就是大图片占1/3, 剩下的 按一定的间隔显示 9个小图。只是现在先想弄好三张图
其实小图片一共有9个的也就是如下 大图
小图 小图 小图
小图 小图 小图
小图 小图 小图现在先想弄好那上面三个小图。也就是改成如下,还是没有显示出三个小图的<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ImageView
android:id="@+id/btn_maininterface"
android:src="@drawable/btn_maininterface"
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:scaleType="fitStart"
/>
<RelativeLayout android:id="@+id/RelativeLayout02"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/btn_bid"
android:paddingLeft="40.0sp"
android:src="@drawable/btn_bid"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_marginTop="50.0dip"
android:layout_weight="1"
android:layout_below="@id/btn_maininterface"
/>
<ImageView
android:id="@+id/btn_der"
android:src="@drawable/btn_tender"
android:layout_width="wrap_content"
android:paddingLeft="80.0sp"
android:layout_height="0dp"
android:layout_toRightOf="@id/btn_bid"
android:layout_alignTop="@id/btn_bid"
android:layout_weight="1"
/>
<ImageView
android:id="@+id/btn_info"
android:paddingLeft="95.0sp"
android:src="@drawable/btn_info"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_toRightOf="@id/btn_der"
android:layout_alignTop="@id/btn_der"
android:layout_weight="1"
/>
</RelativeLayout>
</LinearLayout>
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.GridView;
import android.widget.ImageView;public class GridItemClickActivity extends Activity{
private GridView grid; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_grid);
grid = (GridView) findViewById(R.id.grid);
ImageAdapter adapter = new ImageAdapter(this);
for(int i = 0; i < 9; i ++){
adapter.addItem(R.drawable.ic_launcher);
}
grid.setAdapter(adapter);
}
class ImageAdapter extends BaseAdapter{
private ArrayList<Integer> list = new ArrayList<Integer>();
private Context mContext;
public ImageAdapter(Context context){
mContext = context;
}
public void addItem(int rid){
list.add(rid);
}
public int getCount() {
return list.size();
} public Object getItem(int position) {
return list.get(position);
} public long getItemId(int position) {
return position;
} public View getView(int position, View convertView, ViewGroup parent) {
ImageView view = new ImageView(mContext);
int rid = list.get(position);
view.setImageResource(rid);
return view;
}
}
}xml<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<ImageView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/right"/> <GridView
android:id="@+id/grid"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:numColumns="3"
android:gravity="center">
</GridView> </LinearLayout>
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_maininterfacegrid);
WindowManager wm = (WindowManager)getSystemService(Context.WINDOW_SERVICE);
mScreenWidth = wm.getDefaultDisplay().getWidth();
mScteenHeight =wm.getDefaultDisplay().getHeight(); //获取屏幕大小
。
}然后在:添加 fillView 函数 设定 gridview 的 item的大小,但是没有效果
class ImageAdapter extends BaseAdapter{ public View fillView(View arg0, Object arg1, String arg2, int arg3) {
arg0 = LinearLayout.inflate(getApplicationContext(),R.layout.item_gridview, null);
ImageView img_picture = (ImageView)arg0.findViewById(R.id.img_picture);
LayoutParams para = img_picture.getLayoutParams();
para.height = mScteenHeight/3;//一屏幕显示8行
para.width = (mScreenWidth-20)/3;//一屏显示两列
img_picture.setLayoutParams(para);
return arg0;
}