2017-05-11 191 views
0

我有一个ListView有2个项目。
每一个都是一个ListView。
我只想在单击某个项目时移至其他活动。移动到另一个活动

我的代码

public void onBindViewHolder(HomeHolder holder, int position) { 
    holder.recyclerView.setAdapter(new InHomeAdapter(inflater)); 
    holder.recyclerView.setLayoutManager(new LinearLayoutManager(context, 
    LinearLayoutManager.HORIZONTAL, false)); 
    holder.recyclerView.addOnItemTouchListener(new 
    InHomeAdapter.InHomeListener(context, new InHomeAdapter.ClickListener() {   
      @Override 
      public void onClick(InHomeAdapter.InHomeHolder holder, View view, int position) { 
       Intent i = new Intent(this,movie_Detailes.class); 
      } 
    }); 
} 

这一点我得到 “movie_detailes.class” 下一条红线。
我该怎么做?

回答

1

试试这个

//in adapter constructer 
    Context context; 
    public CustomAdapter(Context context){ 
     this.context = context; 
    } 
    public void onBindViewHolder(HomeHolder holder, int position) { 
      holder.recyclerView.setAdapter(new InHomeAdapter(inflater)); 
      holder.recyclerView.setLayoutManager(new LinearLayoutManager(context, LinearLayoutManager.HORIZONTAL, false)); 
      holder.recyclerView.addOnItemTouchListener(new InHomeAdapter.InHomeListener(context, new InHomeAdapter.ClickListener() { 
       @Override 
       public void onClick(InHomeAdapter.InHomeHolder holder, View view, int position) { 
        Intent i = new Intent(context, movie_Detailes.class); 
       } 
      })); 
     } 
0

尝试这些代码

//Create constructor of your Adapter class 
Context context; 
public YourAdapterClass(Context context){ 
    this.context = context; 
} 

然后

public void onBindViewHolder(HomeHolder holder, int position) { 
holder.recyclerView.setAdapter(new InHomeAdapter(inflater)); 
holder.recyclerView.setLayoutManager(new LinearLayoutManager(context, 
LinearLayoutManager.HORIZONTAL, false)); 
holder.recyclerView.addOnItemTouchListener(new 
InHomeAdapter.InHomeListener(context, new InHomeAdapter.ClickListener() {   
     @Override 
     public void onClick(InHomeAdapter.InHomeHolder holder, View view, int position) { 
      Intent i = new Intent(context,movie_Detailes.class); 
     } 
}); 

}

0
//in adapter constructer 
Context context; 
public CustomAdapter(Context context){ 
    this.context = context; 
} 
public void onBindViewHolder(HomeHolder holder, int position) { 
     holder.recyclerView.setAdapter(new InHomeAdapter(inflater)); 
     holder.recyclerView.setLayoutManager(new LinearLayoutManager(context, LinearLayoutManager.HORIZONTAL, false)); 
     holder.recyclerView.addOnItemTouchListener(new InHomeAdapter.InHomeListener(context, new InHomeAdapter.ClickListener() { 
      @Override 
      public void onClick(InHomeAdapter.InHomeHolder holder, View view, int position) { 
       Intent i = new Intent(context, movie_Detailes.class); 
       context.startActivity(i); 
      } 
     })); 
    } 
相关问题