0

テキストを含む線を表示したいですが、45°の角度で垂直または水平にしないでください。 TextViewとView(行のための)を含むRelativeLayoutに使用しています。 RelativeLayout.LayoutParamsの助けを借りて、私はRelativeLayoutのx/y位置を定義しようとします。水平表示はすでに機能していますが、45°の角度に変更するにはどうしたらいいですか?Android:LinearLayoutでビューの45°の角度(RelativeLayout)を定義するにはどうすればいいですか?

RelativeLayout branch_layout = (RelativeLayout) this 
      .findViewById(R.id.createrelativelayout); 

    LinearLayout branch_item = new LinearLayout(this); 
    branch_item.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, 
      LayoutParams.WRAP_CONTENT)); 
    branch_item.setOrientation(1); 
    TextView tv = new TextView(this); 
    tv.setLayoutParams(new RelativeLayout.LayoutParams(pos, pos)); 
    tv.setId(id); 
    tv.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, 
      LayoutParams.WRAP_CONTENT)); 
    tv.setPadding(20, 0, 20, 0); 
    tv.setText(branch_name); 
    tv.setOnClickListener(this); 

    Rect bounds = new Rect(); 
    Paint textPaint = tv.getPaint(); 
    textPaint.getTextBounds(branch_name, 0, branch_name.length(), bounds); 
    View underline = new View(this); 
    underline.setLayoutParams(new LayoutParams(bounds.width() + 40, 1)); 
    underline.setBackgroundColor(Color.parseColor("#000000")); 

    branch_item_layout = new RelativeLayout(this); 
    branch_item_layout.setLayoutParams(new LayoutParams(
      LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT)); 
    RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(
      LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT); 
    Display display = getWindowManager().getDefaultDisplay(); 
    //x 
    params.leftMargin = display.getWidth()/2; 
    //y 
    params.topMargin = ((display.getHeight()/2)-(((LinearLayout) this 
      .findViewById(R.id.createlinearlayout3)).getWidth()/2)-48); 

    //end x 
    params.bottomMargin = params.leftMargin + bounds.width(); 
    //end y 
    params.rightMargin = (int) (params.leftMargin - (bounds.width()*Math.sin(45))); 

    branch_item.addView(tv); 
    branch_item.addView(underline); 

    branch_item_layout.addView(branch_item, params); 
    branch_layout.addView(branch_item_layout); 

画面全体の実装は今だけ「風景」のx 0から800、Y 0から440 ための計画は、45°の角度で一緒に列及び行を表示することであった

first x = 400 
first y = 114 
end x = 434 
end y = 371 

あります。行の長さは文字列の幅を基準にしています。誰もがこのジレンマに私を助けることができる

希望、

サスキアので、xとyの位置の

答えて

0

問題はrelativelayoutは非常に巨大になったということでした。 したがって、branch_item_layoutレイアウトを削除し、branch_itemにパラメータとアニメーションを追加しました。

サスキア

+0

、あなたを参照してくださいは、ちょうどあなたの最初の答えを編集します。..たびに答えないでください。 – SERPRO

関連する問題