将图像从viewpager保存到自定义网格视图库中

时间:2016-06-09 10:27:22

标签: android image gridview android-viewpager

我在Android Studio中构建应用程序。我的MainActivity非常简单,存在于

之外

ImageView的(标识)

Viewpager(可滑动的图像(10x)

ImageButton(不喜欢图片)

ImageButton(与图片一样)

按钮(我的个人食谱)此按钮将用户发送到他们的个人食谱中,其中所有图像都被“喜欢”。

我想要达到的目的是能够按下ImageButton(Like)并从“我的个人食谱”中的ViewPager中保存显示的图像。

我还想要实现的另一件事是,当按下不喜欢时,Imageviewer会删除图像并继续浏览PageViewer中的下一个图像。

我已经尝试到处搜索如何实现这一目标,但我找不到它。 因此,我希望有人能够帮助我解决这两个问题。

亲切的问候,

一个。

    // Locate the ViewPager in viewpager_main.xml
    viewPager = (ViewPager) findViewById(R.id.pager);
    // Pass results to ViewPagerAdapter Class
    adapter = new ViewPagerAdapter(MainActivity.this, mealname, mealpicture);
    // Binds the Adapter to the ViewPager
    viewPager.setAdapter(adapter);

    Button btn = (Button) findViewById(R.id.button3);

    btn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            startActivity(new Intent(MainActivity.this, CookbookActivity.class));
        }
    });

    // Check Authentication
    mRef = new Firebase(com.example.sick.foodinspiration.Constants.FIREBASE_URL);
    if (mRef.getAuth() == null) {
        loadLoginView();
    }
}

// Dont pay attention to this
//public void DislikeMethod(View view){
   //Toast.makeText(MainActivity.this, "Dislike :(", Toast.LENGTH_SHORT).show();
}

// Dont pay attention to this
 //public void LikeMethod (View view){
    //Toast.makeText(MainActivity.this, "Like :)", Toast.LENGTH_SHORT).show();}

private void loadLoginView() {
    Intent intent = new Intent(this, LoginActivity.class);
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
    startActivity(intent);
}

2 个答案:

答案 0 :(得分:0)

Button likebtn = (Button) findViewById(R.id.likebtn);
    Button dislikebtn = (Button) findViewById(R.id.dislikebtn);

    likebtn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            //LikeMethod();
        }
    });

    dislikebtn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            viewPager.setCurrentItem(viewPager.getCurrentItem()+1);//move to next image
            //DisLikeMethod();
        }
    });

答案 1 :(得分:0)

使用sqlite数据库实现此目的

首先创建一个名为MyCookBook的表,并创建ID(整数),ImagePath / Url(文本),isLike(int 0,1)等列

用户点击“赞”按钮后,插入图像路径并将isLike列设置为1 如果用户点击不喜欢按钮设置isLike列为0反之亦然(如开/关)

选择MyCookBook表,其中行isLike为 1 是您的“我的个人食谱”

我希望这可以帮到你。