2016-03-02 72 views
0

這是一個簡單的應用程序的初始顯示一些TextViews和按鈕的開始。無法從我的活動訪問主窗口/佈局

我想避免使用佈局管理器,通過獲取主窗口/佈局的維度並使用它來以任何我想要的方式對組件進行硬編碼。 但我的主要活動無法獲得有關主窗口/佈局的非零數據。 我不知道這是否應該是這種方式,或者如果我正在做一些愚蠢的事情,並希望得到一些幫助。

這是一個使用win10下的Ant並輸出到USB'd電話的命令行項目。

我已經使用Android Tools 24.4.1更新了SDK Manager到Android 6.0(API 23)並安裝了Android Support Lib的v23.2,儘管Ant在我以前的消息中可以看到不同的想法,有螞蟻輸出:

-build-setup: 
[getbuildtools] Using latest Build Tools: 21.1.2. 

我不知道這是否有所作爲,但不是在這種情況下,我認爲。

接下來的兩個文件就完成了。

我會包括更多,但網站破壞我的代碼的方式不鼓勵上傳到它。 (A)在我的第一篇文章之前我甚至沒有看到它,(B)我現在不明白它。如果我能理解「如何格式化」,可能會有所幫助。 有太多的指令和太多的行話;例如什麼是反撥?

不能有一個簡單的格式,將採取一切你扔在它嗎?

main.xml 
======== 
<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    package="com.Chatterton.Peter.ChessClock" 
    android:id="@+id/main_window" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <TextView 
     android:layout_alignParentTop="true" 
     android:layout_alignParentLeft="true" 
     android:id="@+id/time_text_view_left" 
     android:text="top_left" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     /> 
    <Button 
     android:layout_alignParentBottom="true" 
... 

總共有4個組件,每個角落一個,具有相同的layout_width和height。

ChessClockActivity.java 
======================= 
package com.Chatterton.Peter.ChessClock; 
import android.app.Activity; 
import android.view.View; 
import android.widget.LinearLayout; 
import android.widget.RelativeLayout; 
import android.content.Intent; 
import android.app.Activity; 
import android.os.Bundle; 
import android.graphics.Color; 
import android.widget.TextView; 
import android.util.Log; 

public class ChessClockActivity extends Activity 
    { 
    public int winOriginX=10, winOriginY=20, winWidth=44, winHeight=66; 

    @Override 
    public void onCreate(Bundle savedInstanceState) 
     { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     RelativeLayout mainLayout = (RelativeLayout)findViewById(R.id.main_window); 
     int mainWidth = mainLayout.getWidth(); 
     int mainHeight = mainLayout.getHeight(); 
     Log.d("clox", "mainLayout=" + mainLayout); 
     Log.d("clox", "main W/H=" + mainWidth + "/" + mainWidth);   
... 

屏幕結果:

它顯示顯示最後一個組件 - 全尺寸 - 與它的文本。

logcat results: 
=============== 
D:\Android\ChessClock>adb shell 
[email protected]:/ $ logcat clox:D *:S 
--------- beginning of /dev/log/main 
--------- beginning of /dev/log/system 
D/clox (27214): [email protected]  
D/clox (27214): main W/H=0/0 
** 

回答

相關問題