3

私は時々(4回に1回)起動すると、それを表示する前に画面の4分の1または半分しか描画しないAndroidアクティビティがあります。向きを変えたり、ボタンを押したりすると、画面が正しく描画されます。

私は TextViews、Buttons、Fonts を使用しているだけです - 描画などはありません。

初期化のための私のコードはすべて onCreate() にあります。このメソッドでは、長さ約 40 行のテキスト ファイルを読み込んでおり、共有設定も取得しています。これにより遅延が発生し、インテントを描画できなくなりますか?

誰かが似たようなものを見た場合は、事前に感謝します。

編集- 単語リストの読み込みをコメントアウトしてみましたが、問題は解決しませんでした。

EDIT 2 - 問題を解決することはできませんでしたが、onCreate の最後にタイマーを追加することで改善できました。リフレッシュ レートを低く設定し、目盛りでコントロールの 1 つのテキストを変更しました。これにより、画面が再描画され、画面の黒い部分が取り除かれるように見えました。

活動内容はこちら

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/mainRelativeLayout"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/blue_abstract_background" >

    <RelativeLayout
        android:id="@+id/relativeScore"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:gravity="center_horizontal" >

        <TextView
            android:id="@+id/ScoreLabel"
            style="@style/yellowShadowText"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_centerVertical="true"
            android:padding="10dip"
            android:text="SCORE:"
            android:textSize="18dp" />
    />

        <TextView
            android:id="@+id/ScoreText"
            style="@style/yellowShadowText"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true"
            android:layout_toRightOf="@id/ScoreLabel"
            android:padding="5dip"
            android:text="0"
            android:textSize="18dp" />

        <TextView
            android:id="@+id/GameTimerText"
            style="@style/yellowShadowText"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentRight="true"
            android:layout_centerVertical="true"
            android:layout_marginLeft="5dp"
            android:layout_marginRight="5dp"
            android:minWidth="25dp"
            android:text="0"
            android:textSize="18dp" />

        <TextView
            android:id="@+id/GameTimerLabel"
            style="@style/yellowShadowText"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true"
            android:layout_toLeftOf="@id/GameTimerText"
            android:padding="10dip"
            android:text="TIMER:"
            android:textSize="18dp" />
             />
    </RelativeLayout>

    <RelativeLayout
        android:id="@+id/relativeHighScore"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/relativeScore" >

        <TextView
            android:id="@+id/HighScoreLabel"
            style="@style/yellowShadowText"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:padding="10dip"
            android:text="HIGH SCORE:"
            android:textSize="16dp" />

        <TextView
            android:id="@+id/HighScoreText"
            style="@style/yellowShadowText"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_toRightOf="@id/HighScoreLabel"
            android:padding="10dip"
            android:text="0"
            android:textSize="16dp" />
    </RelativeLayout>

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/relativeHighScore"
        android:orientation="vertical" >

        <LinearLayout
            android:id="@+id/linearMissing"
            android:layout_width="fill_parent"
            android:layout_height="80dp"
            android:layout_gravity="center"
            android:orientation="vertical" >

            <View
                android:layout_width="match_parent"
                android:layout_height="2dp"
                android:background="@color/yellow_text" />

            <TextView
                android:id="@+id/MissingWordText"
                style="@style/yellowShadowText"
                android:layout_width="wrap_content"
                android:layout_height="fill_parent"
                android:layout_gravity="center_horizontal"
                android:layout_marginTop="25dp"
                android:text="MSSNG WRD"
                android:textSize="22dp"
                android:typeface="normal" />
        </LinearLayout>

        <View
            android:layout_width="match_parent"
            android:layout_height="2dp"
            android:background="@color/yellow_text" />

        <TableLayout
            android:id="@+id/buttonsTableLayout"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" >

            <TableRow
                android:id="@+id/tableRow3"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:gravity="center_horizontal"
                android:paddingTop="5dp" >

                <Button
                    android:id="@+id/aVowelButton"
                    android:layout_width="66dp"
                    android:layout_height="66dp"
                    android:layout_gravity="center_horizontal"
                    android:layout_marginBottom="10dp"
                    android:layout_marginRight="5dp"
                    android:background="@drawable/blue_vowel_button"
                    android:text="@string/a"
                    android:textColor="@color/yellow_text"
                    android:textSize="30dp" />

                <Button
                    android:id="@+id/eVowelButton"
                    android:layout_width="66dp"
                    android:layout_height="66dp"
                    android:layout_gravity="center_horizontal"
                    android:layout_marginBottom="10dp"
                    android:layout_marginRight="5dp"
                    android:background="@drawable/blue_vowel_button"
                    android:text="@string/e"
                    android:textColor="@color/yellow_text"
                    android:textSize="30dp" />
            </TableRow>

            <TableRow
                android:id="@+id/tableRow4"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:gravity="center_horizontal" >

                <Button
                    android:id="@+id/iVowelButton"
                    android:layout_width="66dp"
                    android:layout_height="66dp"
                    android:layout_gravity="center_horizontal"
                    android:layout_margin="5dp"
                    android:background="@drawable/blue_vowel_buttoni"
                    android:text="@string/i"
                    android:textColor="@color/yellow_text"
                    android:textSize="30dp" />

                <Button
                    android:id="@+id/oVowelButton"
                    android:layout_width="66dp"
                    android:layout_height="66dp"
                    android:layout_gravity="center_horizontal"
                    android:layout_margin="5dp"
                    android:background="@drawable/blue_vowel_button"
                    android:text="@string/o"
                    android:textColor="@color/yellow_text"
                    android:textSize="30dp" />

                <Button
                    android:id="@+id/uVowelButton"
                    android:layout_width="66dp"
                    android:layout_height="66dp"
                    android:layout_gravity="center_horizontal"
                    android:layout_margin="5dp"
                    android:background="@drawable/blue_vowel_button"
                    android:text="@string/u"
                    android:textColor="@color/yellow_text"
                    android:textSize="30dp" />
            </TableRow>
        </TableLayout>

        <TextView
            android:id="@+id/TimeToStartText"
            style="@style/yellowShadowText"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:textSize="24dp" />

        <Button
            android:id="@+id/startButton"
            style="@style/yellowShadowText"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal"
            android:layout_marginTop="10dp"
            android:background="@drawable/blue_button_menu"
            android:gravity="center"
            android:padding="10dip"
            android:text="START!"
            android:textSize="28dp" />
    </LinearLayout>

</RelativeLayout>

OnCreate() といくつかのメソッド:

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_game);
    isNewWord = true; 
    m_gameScore = 0; 
    m_category = getCategoryFromExtras();           
    //   loadWordList(m_category); 
    initialiseTextViewField(); 
    loadHighScoreAndDifficulty(); 
    setFonts();
    setButtons(); 


    setStartButton(); 

    enableDisableButtons(false); 


}

private void loadHighScoreAndDifficulty() {
    //setting preferences
    SharedPreferences prefs = this.getSharedPreferences(m_category, Context.MODE_PRIVATE);
    int score = prefs.getInt(m_category, 0); //0 is the default value
    m_highScore = score; 
    m_highScoreText.setText(String.valueOf(m_highScore)); 

    prefs = this.getSharedPreferences(DIFFICULTY, Context.MODE_PRIVATE);
    m_difficulty = prefs.getString(DIFFICULTY, NRML_DIFFICULTY); 

}

private void initialiseTextViewField() {
    m_startButton = (Button) findViewById(R.id.startButton);
    m_missingWordText = (TextView) findViewById(R.id.MissingWordText); 
    m_gameScoreText = (TextView) findViewById(R.id.ScoreText); 
    m_gameScoreLabel = (TextView) findViewById(R.id.ScoreLabel); 
    m_gameTimerText = (TextView) findViewById(R.id.GameTimerText); 
    m_gameTimerLabel = (TextView) findViewById(R.id.GameTimerLabel); 
    m_timeToStartText = (TextView) findViewById(R.id.TimeToStartText);
    m_highScoreLabel = (TextView) findViewById(R.id.HighScoreLabel); 
    m_highScoreText = (TextView) findViewById(R.id.HighScoreText);
}

private String getCategoryFromExtras() {
    String category = ""; 
    Bundle extras = getIntent().getExtras();
    if (extras != null) {
        category = extras.getString("category");
    }
    return category;
}

private void enableDisableButtons(boolean enable) {
    Button button = (Button) findViewById(R.id.aVowelButton);
    button.setEnabled(enable);
    button = (Button) findViewById(R.id.eVowelButton);
    button.setEnabled(enable);
    button = (Button) findViewById(R.id.iVowelButton);
    button.setEnabled(enable);
    button = (Button) findViewById(R.id.oVowelButton);
    button.setEnabled(enable);
    button = (Button) findViewById(R.id.uVowelButton);
    button.setEnabled(enable);
}

private void setStartButton() {
    m_startButton.setOnClickListener(new View.OnClickListener() {
        public void onClick(View view) {

            m_gameScore = 0; 
            updateScore(); 
            m_startButton.setVisibility(View.GONE);
            m_timeToStartText.setVisibility(View.VISIBLE);
            startPreTimer(); 
        }

    });

}
4

0 に答える 0