首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CoverFlow 'On item selected‘

CoverFlow 'On item selected‘
EN

Stack Overflow用户
提问于 2017-08-03 21:10:08
回答 1查看 344关注 0票数 0

我知道安卓工作室(我在c#和c++方面的知识有限),基本上是边学边学,到目前为止工作还不错。我正在使用一个coverflow示例,经过大量的调查之后,我不知道在哪里以及如何设置“点击监听程序”的等价物。本部分的目的是根据所选项目选择一个随机数。

代码语言:javascript
复制
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v7.app.AppCompatActivity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;


import java.util.ArrayList;

import it.moondroid.coverflow.components.ui.containers.FeatureCoverFlow;

/**
 * A simple {@link Fragment} subclass.
 */
public class FitnessDiary_Fragment2 extends Fragment {

    Main2Activity mainActivity;

    public FitnessDiary_Fragment2() {
        // Required empty public constructor
    }


    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.fragment_mood_diary_, container, false);

        ((AppCompatActivity) getActivity()).getSupportActionBar().setTitle(R.string.mooddiary_pagename);

        mainActivity = (Main2Activity)getActivity();
        mainActivity.coverFlow = (FeatureCoverFlow) view.findViewById(R.id.coverflow);

        settingDummyData();



        mainActivity.adapter = new CoverFlowAdapter(mainActivity, mainActivity.games);
        mainActivity.coverFlow.setAdapter(mainActivity.adapter);

        // Inflate the layout for this fragment
        return view;
    }

    private void settingDummyData() {
        mainActivity.games = new ArrayList<>();
        mainActivity.games.add(new Game(R.drawable.ic_temp, 
        "replacement1"));
        mainActivity.games.add(new Game(R.drawable.ic_temp, 
        "replacement2"));
        mainActivity.games.add(new Game(R.drawable.ic_temp, 
        "replacement3"));
        mainActivity.games.add(new Game(R.drawable.ic_temp, 
         "replacement4"));
    }

}

由于在片段中工作,这是上面代码引用的“主要活动”,我怀疑我需要这段代码在下面的部分,但我不确定。

代码语言:javascript
复制
    import com.github.jjobes.slidedatetimepicker.SlideDateTimeListener;
import com.github.jjobes.slidedatetimepicker.SlideDateTimePicker;
import com.ignitec.xxxxx.coverflow.CoverFlowAdapter;
import com.ignitec.xxxxx.coverflow.Game;

import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.Locale;

import it.moondroid.coverflow.components.ui.containers.FeatureCoverFlow;

public class Main2Activity extends AppCompatActivity
        implements NavigationView.OnNavigationItemSelectedListener {

    public FeatureCoverFlow coverFlow;
    public CoverFlowAdapter adapter;
    public ArrayList<Game> games;

提前感谢!

EN

回答 1

Stack Overflow用户

发布于 2017-08-04 16:32:24

原来它就像创建一个'onScrollPositionListener‘一样简单,可惜我花了一天时间才弄明白:)。

代码语言:javascript
复制
 @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.fragment_mood_diary_, container, false);

        ((AppCompatActivity) getActivity()).getSupportActionBar().setTitle(R.string.mooddiary_pagename);

        mainActivity = (Main2Activity)getActivity();
        mainActivity.coverFlow = (FeatureCoverFlow) view.findViewById(R.id.coverflow);

        settingDummyData();

        mainActivity.adapter = new CoverFlowAdapter(mainActivity, mainActivity.games);
        mainActivity.coverFlow.setAdapter(mainActivity.adapter);


        mainActivity.coverFlow.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                //TODO CoverFlow item clicked
            }
        });

        mainActivity.coverFlow.setOnScrollPositionListener(new FeatureCoverFlow.OnScrollPositionListener() {
            @Override
            public void onScrolledToPosition(int position) {
                Log.e("Position----->", "" + position);
            }

            @Override
            public void onScrolling() {
                //TODO CoverFlow began scrolling
            }
        });



        // Inflate the layout for this fragment
        return view;
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45485211

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档