标签: android-gridview

android获取gridview中单击项的位置

我们知道使用android网格视图,我们可以执行以下操作并在单击项目时收到通知:

gridview.setOnItemClickListener(new AdapterView.OnItemClickListener() {
    public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
    Toast.makeText(PopularCapitActivity.this, "" + position, Toast.LENGTH_SHORT).show();
    }
});
Run Code Online (Sandbox Code Playgroud)

我们也知道,如果网格中的单元格包含一个可点击的项目,比如一个按钮,则上面的内容不会被触发.

所以目前我有一个网格视图,每个单元都有自己的按钮,所以现在当用户点击该按钮,它会根据按钮位于小区有自己的行动,我的问题是,我怎么能访问单元位置在按钮处理程序?

谢谢

android gridview android-widget android-gridview

8
推荐指数
1
解决办法
2万
查看次数

如何在android中的gridview中添加可滚动的标题?

我试图在android中的gridview布局中添加一个可滚动的标题,我尝试过我可以在网上找到的所有东西,但我不能让它工作,这种类型的布局出现在一些流行的应用程序,如Facebook和Instagram但我无法找到任何可以让我了解如何实际操作的示例代码,任何人都知道如何实现这一目标?将gridview添加到scrollview也不起作用,下面是一些照片,说明了我想要实现的目标.

这是在卷轴之前:

在滚动之前

这是在滚动之后: 滚动后

android android-layout android-gridview android-scrollview

8
推荐指数
1
解决办法
5349
查看次数

如何在android中的gridview适配器的getView()内膨胀另一个布局?

Weekly_Calendar_View 我想创建每周日历视图并在每个网格项目内(每天)可能有几个活动.但是我已经使用网格视图创建了每周日历视图但我想通过动态创建特定日期的活动检查db.和图像一样.下面是我的getView()代码..

@Override
public View getView(int position, View convertView, ViewGroup parent) {
    View row = convertView;
    if (convertView == null) {
        LayoutInflater inflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        row = inflater.inflate(R.layout.calendar_week_gridcell, parent, false);
    }

    txtRowTitle = (TextView) row.findViewById(R.id.txtDayTitle);

    LinearLayout root = (LinearLayout) row.findViewById(R.id.linear_root);

    String dayTitle = list.get(position);
    txtRowTitle.setText(dayTitle);
    if (position == currentWeekDay - 1)
        root.setBackgroundResource(R.drawable.calheader);
    if (!activityMap.isEmpty() && activityMap.containsKey(activityDateList.get(position))) {
        TextView item = new TextView(mContext);
        item.setText(activityMap.get(activityDateList.get(position)));
        item.setBackgroundColor(Color.GREEN);
        root.addView(item);
    }

    return row;
}
Run Code Online (Sandbox Code Playgroud)

}

这里我暂时尝试动态添加文本视图,但我想在这里充气我的自定义activity_item布局并将其添加到网格单元格.

android android-layout android-gridview layout-inflater

8
推荐指数
1
解决办法
2万
查看次数

自定义上下文菜单,如pinterest菜单

每当GridView按下项目时,我一直在寻找类似Pinterest菜单的东西.我知道这个问题太广泛了.但是,对问题的小罢工将提供实现这些目标的正确方法.

阙:

如何在GridView项目上实现自定义上下文菜单,如Contacts +或Pinterest Context菜单?

Pinterest上下文菜单 联系人+上下文菜单

尝试:

ArcMenu:但它们取代了Slider Menu或弹出菜单以用于整个应用程序.我想要可以为GridView项创建onFly的菜单.

卫星菜单:与ArcMenu相同,替换滑块菜单或弹出菜单以用于整个应用程序.

请赐教我实现这些行为.

android android-gridview android-contextmenu

8
推荐指数
1
解决办法
2413
查看次数

如何将int转换为drawable?

我创建了一个带有图标列表的对话框,即drawables.我创建了一个网格视图来显示这些图标.

现在我想获取所选图标并将其设置为我的活动中的图像视图.

那么如何将其转换为drawable,以便我可以在活动的图像视图中设置所选图标?

对话框代码:

 private void showAlertDialog() {

        GridView gridView = new GridView(this);

        gridView.setGravity(Gravity.CENTER);
        gridView.setPadding(0,20,0,20);


        int[] mThumbIds = {
                R.drawable.roundicons05,R.drawable.roundicons08,R.drawable.roundicons02,R.drawable.roundicons03,R.drawable.roundicons04,
                R.drawable.roundicons16,R.drawable.roundicons37,R.drawable.roundicons06,R.drawable.roundicons07,R.drawable.roundicons05,
                R.drawable.roundicons09,R.drawable.roundicons10,R.drawable.roundicons11,R.drawable.roundicons12,R.drawable.roundicons13,
                R.drawable.roundicons14,R.drawable.roundicons15,R.drawable.roundicons16,R.drawable.roundicons17,R.drawable.roundicons18,
                R.drawable.roundicons19,R.drawable.roundicons20,R.drawable.roundicons22,
        };

        gridView.setAdapter(new ImageAdapter(CheckListActivity.this,mThumbIds));
        gridView.setNumColumns(4);
        gridView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                // do something here

             //   icon.setImageDrawable(id);
                imageId = position;
                Drawable drawable = getResources().getDrawable(imageId);
                icon.setImageDrawable(drawable);

            }
        });

        final MaterialDialog dialog = new MaterialDialog.Builder(CheckListActivity.this)
                .customView(gridView, false)
                .title("Select Icon")
                .negativeText("CANCEL")
                .canceledOnTouchOutside(true)
                .build();

        dialog.show();


    }
Run Code Online (Sandbox Code Playgroud)

我试过这样的

  imageId = position;
  Drawable drawable …
Run Code Online (Sandbox Code Playgroud)

int android drawable android-gridview

8
推荐指数
2
解决办法
1万
查看次数

在调试模式下运行Android应用程序

我的Android Studio版本是2.3.3

在我的Android应用程序gradle构建中,我已经明确地server_url调试类型和发布类型定义了不同的字符串值:

buildTypes {
        debug {
            resValue "string", "server_url", "https://myserver.debug.com/"
        }
        release {
            resValue "string", "server_url", "https://myserver.com/"
            ...
        }
    }
Run Code Online (Sandbox Code Playgroud)

在我的代码中,我通过以下方式获取字符串值:

String url = context.getString(R.string.server_url);
Run Code Online (Sandbox Code Playgroud)

我将Android手机连接到笔记本电脑.Android studio工具栏如下所示: 在此输入图像描述

我还选择构建变体为"debug":

在此输入图像描述

我点击了 在此输入图像描述,该应用程序正在我的手机上运行,​​但是,它使用server_url发布类型中定义的值.为什么?

(在build/generated/res/resValues/debug/generated.xml&build/generated/res/resValues/release/generated.xml我看到那些价值观,没有问题.)

====更新===

加入defaultPublishConfig 'debug'解决了该问题(感谢@Ulug托普拉克),但我仍然不知道为什么,虽然我已构建变量为"Debug"的Android Studio不会没有它的工作.也许是Android Studio中的一个错误?

android android-gridview android-studio android-gradle-plugin android-studio-2.3

8
推荐指数
1
解决办法
596
查看次数

更新gridview时如何避免闪烁?

我有一个gridview.我显示来自10个图像阵列的图像.1分钟后我又添加了5张图片.要更新gridview,我使用以下代码.

aImgAdapterL.notifyDataSetChanged();  
Run Code Online (Sandbox Code Playgroud)

aImgAdapterL是我的ImgaeAdapter.新图像正在显示.
我的问题是在更新网格视图时,在图像更新期间发生一次闪烁或闪烁.是否有可能隐藏闪烁?

android android-imageview android-gridview

7
推荐指数
3
解决办法
6869
查看次数

更改android中单行gridview的背景

我正在开发一个Android应用程序,它需要显示一个书架,每行最多包含3个图像.我正在使用gridview.但我陷入了一点,我无法改变gridview中整行的背景.谁能告诉我怎么做?

用于gridview的适配器

private class SampleGridAdapter extends BaseAdapter{

    private Context context;
    private int[] images = {"R.drawable.img1","R.drawable.img2","R.drawable.img3","R.drawable.img4","R.drawable.img5","R.drawable.img6","R.drawable.img7"};
    public SampleGridAdapter(Context context) {
        super();
        this.context = context;

    }
    @Override
    public int getCount() {
        // TODO Auto-generated method stub
        return images.length;
    }
    @Override
    public Object getItem(int arg0) {
        // TODO Auto-generated method stub
        return null;
    }

    @Override
    public long getItemId(int arg0) {
        // TODO Auto-generated method stub
        return 0;
    }

    @Override
    public View getView(int arg0, View arg1, ViewGroup arg2) {
        // TODO Auto-generated method stub …
Run Code Online (Sandbox Code Playgroud)

android gridview android-layout android-gridview

7
推荐指数
1
解决办法
4526
查看次数

如何在图像上显示文本

我编写了一个代码,我在GridView中显示图像,但现在我想在每个图像的底部显示文本.

我想像这样展示我的网格:

在此输入图像描述

但是这样[也想显示Text for Image]:

在此输入图像描述

main.xml中:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    >
    <GridView
        android:id="@+id/gridview"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:verticalSpacing="0dp"
        android:horizontalSpacing="0dp"
        android:stretchMode="columnWidth"
        android:numColumns="2" 
        />
</FrameLayout>
Run Code Online (Sandbox Code Playgroud)

android android-gridview

7
推荐指数
1
解决办法
3256
查看次数

如何使用Android GridView设置相等的间距?

如何设置剩余的空间被平分?

例如,我有一个包含2列的GridView.全宽为700px,列为200px:如何指定xml,左边的空间(300px)被均分为3个?

即100px | 200px(第1列)| 100px | 200px(第2列)| 100px的

android android-layout android-gridview

7
推荐指数
1
解决办法
7448
查看次数