मैं मूल ऐप बना रहा हूं जो स्क्रीन में वर्ग बना रहा है। हर बार मेरा ऐप लॉन्च करने के बाद तुरंत गायब हो जाता है। यहाँ मेरा कोड है:

मैंने स्वत: निर्मित विधियों को हटा दिया है जैसे कि onCreateOptionsMenu MainActivity में चयनित

public class MainActivity extends AppCompatActivity {
public static int WIDTH;
{
    WIDTH = getWindowManager().getDefaultDisplay().getWidth();
}
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    View customView=new CustomView(this);
    customView.setBackgroundColor(Color.BLACK);
    setContentView(customView);
}
}

और अगली कक्षा

public class CustomView extends View {
public static final int ELEMENTS=15;
private Paint paint=new Paint();
int x = 50;
int y = 50;

/////////////////////////////////////////////////////////
public CustomView(Context context){
    super(context);
}
////////////////////////////////////////////////////////////////////
@Override
public void onDraw(Canvas canvas){
    paint.setColor(Color.BLACK);
    canvas.drawRect(30, 30, 80, 80, paint);  //some arbitrary numbers

}
}
-1
user11315601 4 अगस्त 2019, 12:14

1 उत्तर

सबसे बढ़िया उत्तर

बदलने के:

public static int WIDTH;{
WIDTH = getWindowManager().getDefaultDisplay().getWidth();
}

साथ:

public int width(){
    DisplayMetrics displayMetrics = new DisplayMetrics();
    getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
    int width = displayMetrics.widthPixels;
    return width;
}

या इसे हटा दें।

और या तो आप पेंट या कस्टम व्यू पृष्ठभूमि रंग बदलने का प्रयास करें क्योंकि वे दोनों BLACK . पर सेट हैं

1
afhamu 4 अगस्त 2019, 12:48