0

LinearLayout(標高)に仰角を追加しようとしています。 Android Nougatを搭載したデバイスではすべて問題ありませんが、MarshmellowやLollipopでは影が全くありません。何が問題なの?LollipopまたはMarshmallowデバイスに標高がプログラムで追加されていません

LinearLayout ll = (LinearLayout) getActivity().findViewById(R.id.main_ll_newproducts); 
    ll.setBackgroundColor(Color.rgb(50,50,50)); 

     LinearLayout llProduct = new LinearLayout(getContext()); 
     llProduct.setBackgroundResource(R.drawable.product_selection_background); 
     llProduct.setOrientation(LinearLayout.HORIZONTAL); 
     llProduct.setPadding(20,0,0,0); 
     if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { 
      llProduct.setElevation(8); 
     } 
     llProduct.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 

      } 
     }); 

     //Layoutparams 
     LayoutParams layParam = (LayoutParams) ll.getLayoutParams(); 
     layParam.setMargins(10,10,10,30); 
     layParam.width = LayoutParams.MATCH_PARENT; 
     layParam.height = LayoutParams.WRAP_CONTENT; 
     // /Layoutparams 

     llProduct.setLayoutParams(layParam); 

その後、TextviewsとImageViewのようなビューをもう少し追加してから、このLinearLayoutをその親に追加します。

ll.addView(llProduct); 

答えて

0

実際、LayoutParamsが問題でした。私はこれで置き換えた:

//Layoutparams 
     LinearLayout.LayoutParams layParam = new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.MATCH_PARENT); 
     layParam.setMargins(20,10,20,30); 
     layParam.width = FrameLayout.LayoutParams.MATCH_PARENT; 
     layParam.height = FrameLayout.LayoutParams.WRAP_CONTENT; 
     llProduct.setLayoutParams(layParam); 
     // /Layoutparams 
関連する問題