2017-02-06 9 views
0

こんにちは私は現在、自分のユーザー情報フォームのスタイリングに取り組んでいます。特定の画像ビューボタンを押したときに達成する方法を尋ねることはできますか?Androidで拡大表示

サンプルスクリーンショット:

拡張されていない場合。

enter image description here

プレス下向きの矢印が拡大する:

enter image description here

MainActivity.java

import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.support.v7.widget.LinearLayoutManager; 
import android.support.v7.widget.RecyclerView; 
import android.support.v7.widget.Toolbar; 

import com.yoesuv.demorecyclerview.adapter.CardViewAdapter; 

public class MainActivity extends AppCompatActivity { 

    private String[] dataset; 
    private RecyclerView.Adapter adapter; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     dataset = getResources().getStringArray(R.array.android); 

     Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
     setSupportActionBar(toolbar); 
     if(getSupportActionBar()!=null){ 
      getSupportActionBar().setElevation(5); 
     } 

     RecyclerView mRecyclerView = (RecyclerView) findViewById(R.id.recyclerView); 
     mRecyclerView.setHasFixedSize(true); 
     mRecyclerView.setLayoutManager(new LinearLayoutManager(this)); 

     adapter = new CardViewAdapter(dataset); 
     mRecyclerView.setAdapter(adapter); 
    } 
} 

CardviewAdapter.java

import android.support.v7.widget.RecyclerView; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.TextView; 
import android.widget.Toast; 

import com.yoesuv.demorecyclerview.R; 

public class CardViewAdapter extends RecyclerView.Adapter<CardViewAdapter.ViewHolder> { 

    private String[] dataset; 

    public CardViewAdapter(String[] dataset){ 
     this.dataset = dataset; 
    } 

    @Override 
    public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { 
     View itemLayout = LayoutInflater.from(parent.getContext()).inflate(R.layout.cardview_row, null); 
     return new ViewHolder(itemLayout); 
    } 

    @Override 
    public void onBindViewHolder(ViewHolder holder, int position) { 
     holder.tV.setText(dataset[position]); 
    } 

    @Override 
    public int getItemCount() { 
     return dataset.length; 
    } 

    public static class ViewHolder extends RecyclerView.ViewHolder{ 

     public TextView tV; 

     public ViewHolder(View itemView) { 
      super(itemView); 

      tV = (TextView) itemView.findViewById(R.id.textView_data); 
      itemView.setOnClickListener(new View.OnClickListener() { 
       @Override 
       public void onClick(View v) { 
        Toast.makeText(v.getContext(), tV.getText().toString(), Toast.LENGTH_SHORT).show(); 
       } 
      }); 
     } 
    } 
} 

何か助けてもらえますか?

+0

あなたのアダプターのimageViewをクリックすると、最後の2つのアイテム(職業と電話)の表示を処理します。 – nnn

+0

こんにちは、あなたの提案に感謝します。いくつかのコードを表示できますか? – iamcoder

答えて

0

あなたは、コードのわずか2行

<RelativeLayout 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:visibility="gone" 
android:id="@+id/hiddenLayout" > 
// put TextViews and EditTexts for Phone and Occupation here 
</RelativeLayout> 
で自分の表示を切り替えることができますので、私は、コンテナのレイアウトにラインOccupactionと電話回線を置くことをお勧めちょうどそれを隠し、クリック

RelativeLayout hiddenLayout = (RelativeLayout) itemView.findViewById(R.id.hiddenLayout); 
button.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       if(hiddenLayout.getVisibility() == View.VISIBLE) hiddenLayout.setVisibility(View.GONE); // hides layout 
       else hiddenLayout.setVisibility(View.VISIBLE); // shows layout 


      } 
     }); 

で再度表示することができます

関連する問題