-1
package com.example.paul_2.a5aprilie;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
LinearLayout root = new LinearLayout(this);
root.setOrientation(LinearLayout.VERTICAL);
root.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT,LinearLayout.LayoutParams.MATCH_PARENT));
setContentView(root);
Button btn1= new Button(this);
btn1.setText("Click Me");
root.addView(btn1);
LinearLayout linearContainer=new LinearLayout(this);
linearContainer.setOrientation(LinearLayout.HORIZONTAL);
linearContainer.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT,LinearLayout.LayoutParams.MATCH_PARENT));
root.addView(linearContainer);
final LinearLayout firstRow = new LinearLayout(this);
firstRow.setOrientation(LinearLayout.VERTICAL);
firstRow.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT,LinearLayout.LayoutParams.MATCH_PARENT));
linearContainer.addView(firstRow);
ImageView fiora = new ImageView(this);
fiora.setBackgroundResource(R.drawable.fiora);
ImageView katarina= new ImageView(this);
katarina.setBackgroundResource(R.drawable.katarina);
ImageView lb=new ImageView(this);
lb.setBackgroundResource(R.drawable.lb);
RelativeLayout.LayoutParams params1 = new RelativeLayout.LayoutParams(200,120);
// params1.leftMargin =0;
// params1.topMargin = 0;
firstRow.addView(fiora,params1);
firstRow.addView(katarina,params1);
firstRow.addView(lb,params1);
LinearLayout secondRow = new LinearLayout(this);
secondRow.setOrientation(LinearLayout.VERTICAL);
secondRow.setLayoutParams(new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT,LinearLayout.LayoutParams.MATCH_PARENT));
linearContainer.addView(secondRow);
secondRow.addView(lb,params1);
secondRow.addView(fiora,params1);
secondRow.addView(katarina,params1);
btn1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Animation animSlide = AnimationUtils.loadAnimation(getApplicationContext(),R.anim.slide);
firstRow.startAnimation(animSlide);
}
});
}
}
これらの画像を2回(2つの異なるレイアウトで)表示したいだけで、「firstRow」だけで動作します。私は "secondRow"の画像のaddView
にしようとしているときに私のアプリがクラッシュしました。なぜ誰かが私に説明して、どのようにこれを行うことができますか?レイアウトと画像android
まだ試してみましたが、まだ最初の行だけが2行目に表示されません。 –
大学ではJavaですべてを動的に処理したいのでXMLを使用しません。XMLでは何も使用できません。 :( –
私は自分の答えを更新しました@ paul-andrei – shmakova